我有一些关于不同个体性别的数据集。比方说,数据集看起来像这样:
Male
Female
Male and Female
Male
Male
Female
Trans
Unknown
Male and Female
有些人认为自己是男性,有些人认为自己是男性和女性。
现在,我想做的是在 Pandas 中创建一个新的列来映射
Males to 1,
Females to 2,
Others to 3
我写了一些代码
def gender(x):
if x.str.contains("Male")
return 1
elif x.str.contains("Female")
return 2
elif return 3
df["Gender Values"] = df["Gender"].apply(gender)
但我得到的错误是函数不包含任何属性。我尝试删除 str:
x.contains("Male")
我遇到了同样的错误
有更好的方法吗?
请您参考如下方法:
您可以使用:
def gender(x):
if "Female" in x and "Male" in x:
return 3
elif "Male" in x:
return 1
elif "Female" in x:
return 2
else: return 4
df["Gender Values"] = df["Gender"].apply(gender)
print (df)
Gender Gender Values
0 Male 1
1 Female 2
2 Male and Female 3
3 Male 1
4 Male 1
5 Female 2
6 Trans 4
7 Unknown 4
8 Male and Female 3
