将pandas数据框列拆分为几列的最有效方法

时间:2018-11-08 03:20:18

标签: python python-3.x pandas performance dataframe

例如,我有一个数据框列('x'),其中包含列表作为值。

import pandas as pd
jk = pd.DataFrame()
jk['x'] = [[1, 2, 3], [1, 4, 2], [27, 1, 3]]

我使用下面的代码将值分成这样的列。但是,我的实际数据集非常大。我每个列表中都有大约80、000行和16个值。有没有更有效的方法可以做到这一点?

jk1 = pd.DataFrame(jk.x.values.tolist(), columns=['a','b','c'])

enter image description here

1 个答案:

答案 0 :(得分:0)

否,没有更有效的方法

您应该首先避免创建一系列列表。完成此操作后,您将剩下一个object dtype系列和一个嵌套的指针层。一层指向每个列表,另一层指向每个列表中的各个元素。这禁止向量化操作。