df1 = pd.DataFrame(np.column_stack([CIK, period, data]), columns=['CIK','Period','Text'])
我有3个列表,我想成为我的数据帧的列。当我的数据很小时,上面的代码运行正常。现在这给了我内存错误。我错过了什么吗? 有没有不同的方法来做到这一点?
答案 0 :(得分:2)
您可以通过将dict
传递给它来构建数据框。
i = ['CIK','Period','Text']
j = [CIK, period, data]
df = pd.DataFrame(dict(zip(i, j))
这很便宜,因为它不会导致创建数据副本。 dict
只是在引用周围生成键值对(不需要创建任何数据副本,只有引用被移动)。不幸的是,通过column_stack
调用,必须将数组堆叠到新分配的数组中并返回新结果,这很浪费。