包含各种形状的numpy数组的Pandas行



我将创建一个Pandas DataFrame,其中每个特定的(index, column)位置可以是任意形状的numpy数组,甚至是一个简单的数字。

如此:

import numpy as np, pandas as pd
x = pd.DataFrame([[np.random.rand(100, 100, 20, 2), 3], [2, 2], [3, 3], [4, 4]],
index=['A1', 'B2', 'C3', 'D4'], columns=['data', 'data2'])
print(x)

需要50秒才能在我的电脑上创建!为什么?

单独np.random.rand(100, 100, 20, 2)是超快的(<1秒创建)

如何加速包含各种形状的数组的Pandas数据集的创建?

这实际上不是创建的问题,这是print声明。在我的电脑上,创建1000个循环需要2.8秒。但print的一次迭代大约需要26秒。

有趣的是,print(x['data2'])print(x['data']['A1'])print(x['data']['B2'])基本上都是瞬时的。因此,print似乎有一个问题,弄清楚如何显示大小截然不同的项目。也许是一个bug?

相关内容

  • 没有找到相关文章

最新更新