如何将条件逻辑应用于 Pandas DataFrame。
请参阅下面所示的数据框,
data desired_output
0 1 False
1 2 False
2 3 True
3 4 True
我的原始数据显示在“数据”列中,所需的输出显示在它旁边。如果“data”中的数字低于 2.5,则desired_output 为False。
我可以应用一个循环并重新构建 DataFrame...但这将是“un-pythonic”
In [1]: df
Out[1]:
data
0 1
1 2
2 3
3 4
您想要应用一个函数,该函数根据所选数据帧列有条件地返回一个值。
In [2]: df['data'].apply(lambda x: 'true' if x <= 2.5 else 'false')
Out[2]:
0 true
1 true
2 false
3 false
Name: data
然后,您可以将返回的列分配给数据框中的新列:
In [3]: df['desired_output'] = df['data'].apply(lambda x: 'true' if x <= 2.5 else 'false')
In [4]: df
Out[4]:
data desired_output
0 1 true
1 2 true
2 3 false
3 4 false
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)