use*_*495 11 python matrix series multidimensional-array pandas
我在某种程度上得到了一个pandas.Series
包含一堆数组的数据,如s
下面的代码所示.
data = [[1,2,3],[2,3,4],[3,4,5],[2,3,4],[3,4,5],[2,3,4],
[3,4,5],[2,3,4],[3,4,5],[2,3,4],[3,4,5]]
s = pd.Series(data = data)
s.shape # output ---> (11L,)
# try to convert s to matrix
sm = s.as_matrix()
# but...
sm.shape # output ---> (11L,)
Run Code Online (Sandbox Code Playgroud)
如何将其s
转换为具有形状(11,3)的矩阵?谢谢!
jua*_*aga 15
如果,出于某种原因,你发现自己有一种令人厌恶的a Series
,那么将它恢复到你想要的那种matrix
或者array
你想要的是直截了当的:
In [16]: s
Out[16]:
0 [1, 2, 3]
1 [2, 3, 4]
2 [3, 4, 5]
3 [2, 3, 4]
4 [3, 4, 5]
5 [2, 3, 4]
6 [3, 4, 5]
7 [2, 3, 4]
8 [3, 4, 5]
9 [2, 3, 4]
10 [3, 4, 5]
dtype: object
In [17]: sm = np.matrix(s.tolist())
In [18]: sm
Out[18]:
matrix([[1, 2, 3],
[2, 3, 4],
[3, 4, 5],
[2, 3, 4],
[3, 4, 5],
[2, 3, 4],
[3, 4, 5],
[2, 3, 4],
[3, 4, 5],
[2, 3, 4],
[3, 4, 5]])
In [19]: sm.shape
Out[19]: (11, 3)
Run Code Online (Sandbox Code Playgroud)
但除非它是你无法改变的东西,否则开始使用该系列毫无意义.
Sel*_*lah 10
另一种方法是提取系列的值并在其上使用numpy.stack。
np.stack(s.values)
Run Code Online (Sandbox Code Playgroud)
PS。我经常遇到类似的情况。
归档时间: |
|
查看次数: |
7607 次 |
最近记录: |