python - 为什么在使用应用 lambda 时出现错误“浮动”对象不可迭代
问题描述
我尝试将中国省份列表转换为拼音使用拼音包,代码如下:
df['province'] = df['comb_province'].apply(lambda x: pinyin.get(x, format="strip", delimiter=''))
但我收到一条错误消息:'float' 对象不可迭代。为什么会发生这种情况?我该如何解决?
谢谢!
解决方案
您可能已经遇到过df["comb_province"] 列中的值numpy.nan
或值。None
因此,您可以尝试使用以下代码使用 numpy.nan 删除这些行:
df = df[~df["comb_province"].isnull()]
或者,如果您希望使用 numpy.nan 或 None 保留行,则使用以下命令:
df["comb_province"] = df["comb_province"].astype(str)
您的原始代码可能是strip
or split
,与字符串操作相关的内容,在遇到 numpy.nan 或 None 时会抛出错误。
推荐阅读
- powershell - 在 xml 生成 PowerShell 脚本中实现跟踪
- c++ - 为什么我的计数器应该为 0 时不能正常工作,但其他值 >0 工作正常?
- android - kotlin 中 val 的动态延迟初始化
- python - eBay API 返回 errorID 2000,服务操作 GetItem 未知
- sql-server - 加入未返回正确结果
- html - 第 N 个子选择器不适用于 CSS Grid 中的背景
- php - 数组元素似乎被忽略了?
- amazon-web-services - 如何按标签值过滤 CloudFormation 堆栈?
- c# - Xamarin.Android 中的资源文件夹问题
- javascript - 如何在 if-else 函数中使用 jquery 更改按钮文本