我有一个如下所示的 Pandas 数据框:
+-----+--------+-------+
| Age | PhysID | PedID |
+-----+--------+-------+
| 28 | 111 | 123 |
| 26 | 111 | 123 |
| 3 | 111 | 123 |
+-----+--------+-------+
我想创建一个名为if或等于elseDocID
的值的新列。输出将如下所示:PhysID
Age>18
PedID
+-----+--------+-------+-------+
| Age | PhysID | PedID | DocID |
+-----+--------+-------+-------+
| 28 | 111 | 123 | 111 |
| 26 | 111 | 123 | 111 |
| 3 | 111 | 123 | 123 |
+-----+--------+-------+-------+
有没有一种干净的方法可以使用一些内置函数而不是编写自己的函数来做到这一点?谢谢!
使用 np.where
df['NewId']=np.where(df.Age>18,df.PhysID,df.PedID)
df
Age PhysID PedID NewId
0 28 111 123 111
1 26 111 123 111
2 3 111 123 123
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句