Python 数据帧列中值的条件替换
假设我有一个pandas数据帧,列值为age,如df.age={25,35,76,21,23,30} 我想做这样的就地更换:Python 数据帧列中值的条件替换,python,pandas,Python,Pandas,假设我有一个pandas数据帧,列值为age,如df.age={25,35,76,21,23,30} 我想做这样的就地更换: 如果df.age>=25且df.age您可以根据您的情况将序列与值(25/35)进行比较,然后使用aType(int)将真/假值转换为1/0。范例- df['age'] = ((25 <= df['age']) & (df['age'] <= 35)).astype(int) df['age']=((25您还可以创建一个函数来检查您的条件,并应用于数
如果df.age>=25且df.age您可以根据您的情况将序列与值(25/35)进行比较,然后使用
aType(int)
将真/假
值转换为1/0
。范例-
df['age'] = ((25 <= df['age']) & (df['age'] <= 35)).astype(int)
df['age']=((25您还可以创建一个函数来检查您的条件,并应用于数据帧:
def condition(value):
if 25 <= value <= 35:
return 1
return 0
# stealing sample from @AnandSKumar because I'm lazy
In [32]: df
Out[32]:
age
0 25
1 35
2 76
3 21
4 23
5 30
In [33]: df['age'] = df['age'].apply(condition)
In [34]: df
Out[34]:
age
0 1
1 1
2 0
3 0
4 0
5 1
def条件(值):
如果25基于刚刚删除的答案,请记住,您要查找的条件的正确语法是(df.age>=25)&(df.age我非常喜欢lambda部分,它给了我很大的灵活性,可以根据需要扩展条件。谢谢!
def condition(value):
if 25 <= value <= 35:
return 1
return 0
# stealing sample from @AnandSKumar because I'm lazy
In [32]: df
Out[32]:
age
0 25
1 35
2 76
3 21
4 23
5 30
In [33]: df['age'] = df['age'].apply(condition)
In [34]: df
Out[34]:
age
0 1
1 1
2 0
3 0
4 0
5 1
df['age'] = df['age'].apply(lambda x: 1 if 25 <= x <= 35 else 0)