我正在使用pandas.Series和np.ndarray。
代码是这样的
>>> t
array([[ 0., 0., 0.],
[ 0., 0., 0.],
[ 0., 0., 0.]])
>>> pandas.Series(t)
Exception: Data must be 1-dimensional
>>>
我试图将其转换为一维数组:
>>> tt = t.reshape((1,-1))
>>> tt
array([[ 0., 0., 0., 0., 0., 0., 0., 0., 0.]])
tt仍然是多维的,因为有两个'['。
那么,如何真正将ndarray转换为array?
搜索后,it says they are the same。但是在我的情况下,他们的工作方式不同。
最佳答案
另一种方法是使用np.ravel:
>>> np.zeros((3,3)).ravel()
array([ 0., 0., 0., 0., 0., 0., 0., 0., 0.])
ravel
优于flatten
的重要性在于ravel
仅在必要时复制数据,并且通常返回一个 View ,而flatten
将始终返回数据的副本。要使用整形来使数组变平坦:
tt = t.reshape(-1)
关于python - 如何将ndarray转换为array?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18200052/