如何在熊猫数据框的列中存储一个numpy数组?


问题内容

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

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

为了提供我在这里想要做的事情的背景信息:

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


问题答案:

将它们存储为元素,就像处理其他任何数据一样:

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