结合在何处

Combining is in and where

如何根据 Pandas

中的奇偶标志创建新列

这是我的数据:

id   Flag
001   1
002   2
003   3
004   4

如果标志是偶数则女性,如果标志是奇数则男性,我想要这个输出:

id   Flag   Gender
001   1     Male
002   2     Female
003   3     Male
004   4     Female

使用 numpy.where 和模 2 来检查偶数和奇数:

df['Gender'] = np.where(df['Flag'] % 2,'Male','Female')
print (df)
   id  Flag  Gender
0   1     1    Male
1   2     2  Female
2   3     3    Male
3   4     4  Female

尝试申请

 Id =['001','002','003','004']
 Flag=[1,2,3,4]  
 df=pd.DataFrame({'id':Id,'flag':Flag})

 df['gender']=df['flag'].apply(lambda x: 'Male' if x%2 else 'Female')

输出:

 id  flag  gender
 0  001     1    Male
 1  002     2  Female
 2  003     3    Male
 3  004     4  Female