繁体   English   中英

如何使用掩码变量将特定值分配给 pandas 中的列数据?

[英]How do I assign a particular value to a column data in pandas using mask variable?

我有一个 dataframe 水果,fruits_df。 最初我的代码中有这个:

mask = ((fruits_df['SEASON']=='SUMMER') | (fruits_df['COLOR']'YELLOW'))
fruits_df['FRUIT'] = np.where(mask, 'SUMMER FRUITS', '')

现在,如果我想专门过滤具有甜味且属于 Alphonso 品种的黄色夏季水果,并将它们分配到新列“MANGO”。 我该怎么做? 我已经尝试了下面的代码,但它没有按预期工作。

mask = ((fruits_df['SEASON']=='SUMMER') &
(fruits_df['TASTE']=='SWEET') &
(fruits_df['VARIETY']=='ALPHONSO') &
(fruits_df['FRUIT']==''))
fruits_df['FRUIT'] = np.where(mask, 'MANGO', fruits_df['FRUIT'])

我是 pandas 的初学者。任何帮助将不胜感激。 谢谢。

我认为,您缺少掩码变量中 FRUIT 列的黄色条件; 所以将掩码编辑成这样;

mask = ((fruits_df['SEASON']=='SUMMER') & 
        (fruits_df['TASTE']=='SWEET') & 
        (fruits_df['VARIETY']=='ALPHONSO') & 
        (fruits_df['FRUIT']=='YELLOW'))       # edited here

或者也许是;

mask = ((fruits_df['SEASON']=='SUMMER') & 
        (fruits_df['TASTE']=='SWEET') & 
        (fruits_df['VARIETY']=='ALPHONSO'))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM