gpt4 book ai didi

python - 属性错误 : 'float' object has no attribute 'split'

转载 作者:太空狗 更新时间:2023-10-29 19:33:34 26 4
gpt4 key购买 nike

我正在调用这条线:

lang_modifiers = [keyw.strip() for keyw in row["language_modifiers"].split("|") if not isinstance(row["language_modifiers"], float)]

这似乎适用于 row["language_modifiers"] 是一个词(atlas method, central)的地方,但当它出现时就不行了向上为 nan

我认为我的 if not isinstance(row["language_modifiers"], float) 可以捕捉到事情以 nan 出现的时间,但事实并非如此。

背景:row["language_modifiers"] 是 tsv 文件中的一个单元格,当该单元格在正在解析的 tsv 中为空时显示为 nan

最佳答案

您是对的,此类错误主要是由表示空单元格的 NaN 引起的。在应用你的进一步操作之前,在你的数据帧 df 上使用这个习惯用法来过滤掉这些数据是很常见的:

df_new = df[df['ColumnName'].notnull()]

或者,使用 fillna() 方法用默认值估算(替换)null 值可能更方便。例如。所有 nullNaN 都可以用其列的平均值替换

housing['LotArea'] = housing['LotArea'].fillna(housing.mean()['LotArea'])

或者可以用空字符串""之类的值或者其他默认值替换

housing['GarageCond']=housing['GarageCond'].fillna("")

关于python - 属性错误 : 'float' object has no attribute 'split' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42224700/

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