gpt4 book ai didi

python - 当在 pandas DataFrame 上使用 apply 时,获取列表是不可散列的

转载 作者:太空宇宙 更新时间:2023-11-03 20:17:17 24 4
gpt4 key购买 nike

我有一个 DataFrame df,每行都有一个列表,我想将 remove_stops 函数应用于每一行。

import pandas as pd
from nltk.corpus import stopwords
stop = stopwords.words('english')

def remove_stops(row):
meaningful_words = [w for w in row if not w in stop]
return meaningful_words

df.apply(remove_stops)

当我运行代码时,出现以下错误

meaningful_words = [w for w in row if not w in stop]
TypeError: ("unhashable type: 'list'", 'occurred at index original')

经过一些研究,我了解到该错误是由于列表不可变而引起的。

print(type(df))
print(type(df.iloc[0, 0]))
<class 'pandas.core.frame.DataFrame'>
<class 'list'>

如何解决这个问题?

最佳答案

显式使用列名后,我想按预期应用代码

df['original'].apply(remove_stops)

我能够按预期运行。感谢您的及时回复。

关于python - 当在 pandas DataFrame 上使用 apply 时,获取列表是不可散列的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58369033/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com