在熊猫系列和数据框中使用Spacy进行身份验证问题

问题描述 投票:0回答:1

我正在使用[Pandas]和[Spacy]进行形状为(14640,16)的text data的预处理,但在获取文本的残化形式方面存在问题。此外,如果我使用仅包含文本列的pandas系列(即具有一列的数据框),则也存在不同的问题。

代码:(数据框)

nlp = spacy.load("en_core_web_sm")
df['parsed_tweets'] = df['text'].apply(lambda x: nlp(x))
df[:3]

Result

此后,我使用parsed_tweets遍历该列以获取受限数据,但得到错误。

代码:

for token in df['parsed_tweets']:
  print(token.lemma_)

Error

代码:(熊猫系列)

df1['tweets'] = df['text']

nlp = spacy.load("en_core_web_sm")
for text in nlp.pipe(iter(df1), batch_size = 1000, n_threads=-1):
  print(text)

Error

有人可以帮助我解决错误吗?我尝试了其他stackoverflow解决方案,但无法获取Spacy的doc对象对其进行迭代并获取令牌和lemmetized令牌。我在做什么错?

python pandas dataframe series spacy
1个回答
0
投票
#you can directly get your lemmatized token by running list comprehension in your lambda function  

df['parsed_tweets'] = df['text'].apply(lambda x: [[y.lemma_] for y in  nlp(x)])

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.