为什么它是给'浮动'对象是不可迭代的错误?当我把嵌套循环?
text = [] for i in df['text']: string = "" for j in i: string += j text.append(string) text[2]
63lcw9qa1#
@miepsik是对的,你可能在text列中有NaN。可重现示例:
text
df = pd.DataFrame({'text': ['Hello', np.nan, 'World']}) text = [] for i in df['text']: string = "" for j in i: string += j text.append(string)
输出:
... TypeError: 'float' object is not iterable
要调试 Dataframe 并查找NaN值,您可以用途:
>>> df.loc[df['text'].isna()] text 1 NaN
我所理解的是,你迭代字符串(i),然后循环每个字符(j)并创建一个列表。我不知道你的dataframe到底是什么样子的,但你可以用向量化函数优化你的代码,比如:
i
j
>>> df['text'].dropna().tolist() ['Hello', 'World']
1条答案
按热度按时间63lcw9qa1#
@miepsik是对的,你可能在
text
列中有NaN。可重现示例:
输出:
要调试 Dataframe 并查找NaN值,您可以用途:
我所理解的是,你迭代字符串(
i
),然后循环每个字符(j
)并创建一个列表。我不知道你的dataframe到底是什么样子的,但你可以用向量化函数优化你的代码,比如: