【发布时间】:2019-12-01 15:57:50
【问题描述】:
我有一个数据框,其中包含与之对应的文本和情感分数。我创建了一个列,将所有二元组存储在一个列中。现在我想创建一个 Dataframe,它的这个 bigram 列扩展了它的分数,当我使用 for 循环执行第二步时,它的速度非常慢
【问题讨论】:
标签: pandas
我有一个数据框,其中包含与之对应的文本和情感分数。我创建了一个列,将所有二元组存储在一个列中。现在我想创建一个 Dataframe,它的这个 bigram 列扩展了它的分数,当我使用 for 循环执行第二步时,它的速度非常慢
【问题讨论】:
标签: pandas
熊猫 >= 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
【讨论】:
pip install -U pandas