如何在将数据帧保存为 csv 后迭代使用 spaCy 解析的数据帧?
How to iterate over a dataframe parsed with spaCy after it was saved as a csv?
我创建了一个带有 spacy(列:sentencens、tokens、stopwords、content words、pos、entities)的数据框并将其保存为 csv。
当我将它作为 csv 文件读取时(它看起来相当不错),但是当我在列上执行 for 循环时,它并没有 return 预期的结果(对于我的 Python 基本域)。
例如:
words = []
for items in df['tokens']:
for word in items:
words.append(word)
如我所料
[茶,和,...]
我得到了什么
['t',
'e',
'a',
',',
' ',
'a',
'n',
'd',
.
.
.
它发生在我尝试迭代的任何列中。它有什么问题?
我需要它是一个 csv,以便与使用 excel 可视化数据的大学同学共享。
from ast import literal_eval
df = pd.read_csv('sample.csv', converters={'tokens': literal_eval})
print(df.iloc[0,0][0])
这应该可以帮助您评估字符串列表,然后根据需要单独解析它。然后你的 for 循环将像上面那样工作
我没有最小可重现的例子。我创建了一个:
import pandas as pd
df = pd.DataFrame(
{ 'tokens': [['tea','and','coffee'],['coffee','with','milk']]})
words = []
for items in df['tokens']:
for word in items:
words.append(word)
请向我们展示您的 df['tokens']
并提供一个最低限度的可重现示例,我将相应地进行编辑。
我创建了一个带有 spacy(列:sentencens、tokens、stopwords、content words、pos、entities)的数据框并将其保存为 csv。 当我将它作为 csv 文件读取时(它看起来相当不错),但是当我在列上执行 for 循环时,它并没有 return 预期的结果(对于我的 Python 基本域)。
例如:
words = []
for items in df['tokens']:
for word in items:
words.append(word)
如我所料 [茶,和,...]
我得到了什么 ['t', 'e', 'a', ',', ' ', 'a', 'n', 'd', . . .
from ast import literal_eval
df = pd.read_csv('sample.csv', converters={'tokens': literal_eval})
print(df.iloc[0,0][0])
这应该可以帮助您评估字符串列表,然后根据需要单独解析它。然后你的 for 循环将像上面那样工作
我没有最小可重现的例子。我创建了一个:
import pandas as pd
df = pd.DataFrame(
{ 'tokens': [['tea','and','coffee'],['coffee','with','milk']]})
words = []
for items in df['tokens']:
for word in items:
words.append(word)
请向我们展示您的 df['tokens']
并提供一个最低限度的可重现示例,我将相应地进行编辑。