# numpy - What exactly A[:, state] means in the python?

912 views

### numpy - What exactly A[:, state] means in the python?

What exactly this the following line means?

``````
# p=T[:, state] what does this means?

# Here is the complete code
import numpy as np

T = np.array([ [ 0.40, 0.56, 0.03, 0.01],
[0.45, 0.51, 0.04, 0.00],
[0.25, 0.25, 0.25, 0.25 ],
[0.00, 0.00, 0.01, 0.99 ]])

xk = np.arange(len(T))

def gen_sample(state):
return np.random.choice(xk, 1, p=T[:, state])
``````

I understand it takes the transition matrix but what does " : " and "state" mean?

by (71.8m points)

`T` is a numpy array:

``````In [38]: T
Out[38]:
array([[0.4 , 0.56, 0.03, 0.01],
[0.45, 0.51, 0.04, 0.  ],
[0.25, 0.25, 0.25, 0.25],
[0.  , 0.  , 0.01, 0.99]])
``````

`T[..]` is indexing; in this case is selects a column of the array:

``````In [39]: T[:,0]
Out[39]: array([0.4 , 0.45, 0.25, 0.  ])
In [40]: T[:,3]
Out[40]: array([0.01, 0.  , 0.25, 0.99])
``````

Spend some time to read the `numpy` basics. Indexing an array is a very basic operation.