17

是否可以将任意numpy数组存储为数据框中的单个列的值Pandas

这些数组都是二维的,我打算用它们来计算同一数据框中其他列的值。

为了提供一些我在这里尝试做的事情的背景:

每个数组都是某个网络的邻接矩阵,对于每个网络,我想计算其各种特征(例如密度、中心性、聚类系数等),这些特征实际上是同一数据帧中的其他列。

4

2 回答 2

15

将它们存储为元素,就像您对任何其他数据所做的那样:

import numpy as np
import pandas as pd
a = np.arange(10).reshape(2,5)
b = np.arange(10, 20).reshape(2,5)
pd.DataFrame({'foo':[42,51], 'arr':[a,b]})
Out[10]: 
                                            arr  foo
0            [[0, 1, 2, 3, 4], [5, 6, 7, 8, 9]]   42
1  [[10, 11, 12, 13, 14], [15, 16, 17, 18, 19]]   51

请注意,您尝试做的事情听起来更像是使用Panel.

于 2013-10-24T19:12:18.453 回答
1

您是什么意思将任意 numpy 数组存储为 Pandas 数据框中的列的值?

像这样的东西?

import numpy as np
import pandas as pd


x = np.random.randn(50, 25)
random_frame = pd.DataFrame(x)

这会将数组 x 存储在列名称为 0、1、2、3 的 DataFrame 中......你能澄清一下吗?我认为这更像是一个评论,但我不知道我是否可以评论。

于 2013-10-24T19:09:57.420 回答