python - Pandas Dataframe - 系列的真值不明确
问题描述
我有以下代码。
import pandas as pd
data = {'income_bracket':['<=50k', '<=75k', '<=125k', '>1(25k']}
df = pd.DataFrame(data)
def label_fix(label):
if df['income_bracket']== '<=50K':
return 0
else:
return 1
df['income_bracket']=df['income_bracket'].apply(label_fix)
当我运行代码时,我收到以下错误。
ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().
我真的很感激这里的任何帮助。谢谢
解决方案
import pandas as pd
data = {'income_bracket':['<=50k', '<=75k', '<=125k', '>1(25k']}
df = pd.DataFrame(data)
def label_fix(label):
if label== '<=50K':
return 0
else:
return 1
df['income_bracket']=df['income_bracket'].apply(label_fix)
这是您的代码片段的更正版本。你正在做的是调用 df['income_bracket'] 这是一个系列。相反,您应该在 apply() 中使用作为参数传递给 label_fix() 的“标签”。将 '<=50K' 更改为 '<=50k' 否则所有值都将为 1
推荐阅读
- date - SSAS 表格 - 事实表和第二个日期维度之间没有关系
- python - 获取 Spotify Artist URI(Python 初学者)
- python - Discord 机器人在特定输入上说出特定内容
- python - 如何从同一个 Excel 文件中的多个工作表中获取所选列的平均值
- algorithm - 我应该使用什么解决方案来生成所有可能的字母组合的列表?
- unity3d - Unity 3D 2D 导入精灵像素化
- javascript - JS,如何仅更改父元素
- python - 蟒蛇 | NameError:未定义名称“null”
- youtube-api - 使用 YouTube API,是否可以按上传日期过滤搜索?
- flutter - 颤振我如何改变水龙头上容器的颜色?