I'm using pandas.Series and np.ndarray.
The code is like this
>>> t
array([[ 0., 0., 0.],
[ 0., 0., 0.],
[ 0., 0., 0.]])
>>> pandas.Series(t)
Exception: Data must be 1-dimensional
>>>
And I trie to convert it into 1-dimensional array:
>>> tt = t.reshape((1,-1))
>>> tt
array([[ 0., 0., 0., 0., 0., 0., 0., 0., 0.]])
tt is still multi-dimensional since there are double '['.
So how do I get a really convert ndarray into array?
After searching, it says they are the same. However in my situation, they are not working the same.
解决方案
An alternative is to use np.ravel:
>>> np.zeros((3,3)).ravel()
array([ 0., 0., 0., 0., 0., 0., 0., 0., 0.])
The importance of ravel over flatten is ravel only copies data if necessary and usually returns a view, while flatten will always return a copy of the data.
To use reshape to flatten the array:
tt = t.reshape(-1)