将pandas数据框中的列表列扩展为单个列的快速方法

时间:2019-12-01 07:39:25

标签: pandas

我有一个数据框,其中包含与之对应的文本和情感评分。我创建了一个列,将所有二元组存储在一个列中。现在,我想创建一个数据框,将其bigram列扩展为其得分,当我使用for循环执行第二步时,它的速度很慢

enter image description here

enter image description here

1 个答案:

答案 0 :(得分:1)

熊猫> = 0.25 您可以使用explode

df = df.explode('bigrams')

虚拟示例:

import pandas as pd
df1 = pd.DataFrame({'score':[0.2,0.3],
               'bigrams':[['a', 'b', 'c', 'e'],['f','g']]})

print(df1)

=======================

df1:

    score   bigrams
0   0.2     [a, b, c, e]
1   0.3     [f, g]

==========================

df1 = df1.explode('bigrams')
print(df1)

============================

df1:

    score   bigrams
0   0.2     a
0   0.2     b
0   0.2     c
0   0.2     e
1   0.3     f
1   0.3     g