python – 在pandas dataframe列中有条件地替换值
发布时间:2020-12-20 11:46:12 所属栏目:Python 来源:网络整理
导读:假设我有一个prandas数据帧,其列值为年龄,如df.age = {25,35,76,21,23,30} 我想做一个像这样的inplace替换: 如果df.age = 25且df.age = 35: ???用1替换该值 其他: ???用0替换该值 我试过这个df [df.age = 7.35和df.age = 7.45,'age'] = 0 但似乎没有用.
假设我有一个prandas数据帧,其列值为年龄,如df.age = {25,35,76,21,23,30}
我想做一个像这样的inplace替换: 如果df.age> = 25且df.age< = 35: 我试过这个df [df.age> = 7.35和df.age< = 7.45,'age'] = 0 解决方法
您还可以创建一个函数来检查您的条件,并应用于数据框:
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 或者使用一个带lambda的衬垫: df['age'] = df['age'].apply(lambda x: 1 if 25 <= x <= 35 else 0) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容