【发布时间】:2020-10-27 08:10:06
【问题描述】:
我对 pandas 很陌生,需要一些帮助。我有一个年龄列,需要将这些分组: 年轻人:年龄≤30 中年人:30
def get_num_people_by_age_category(dataframe):
young, middle_aged, old = (0, 0, 0)
dataframe["age"] = pd.cut(x=dataframe['age'], bins=[30,31,60,61], labels=["young","middle_aged","old"])
return young, middle_aged, old
ages = get_num_people_by_age_category(dataframe)
print(dataframe)
【问题讨论】:
-
你想把
return young, middle_aged, old改成return dataframe吗? -
正如@jezrael 所说,你永远不会对
young, middle_aged, old = (0, 0, 0)做任何事 -
嗨,@jezrael - 尝试但收到相同的错误消息...顺便说一句,如果我用收入数据(这是我使用的数据帧)替换数据帧,我会收到另一条错误消息,即 => TypeError: 'int' 和 'str' 的实例之间不支持'
-
@babavyna - 可以将
dataframe["age"] = pd.cut(x=dataframe['age'], bins=[30,31,60,61], labels=["young","middle_aged","old"])更改为dataframe["age"] = pd.cut(x=pd.to_numeric(dataframe['age'], errors='coerce'), bins=[30,31,60,61], labels=["young","middle_aged","old"])吗?