我有几个表达式,它们选择数据帧(df
)中的某些行,并返回多个布尔数组和掩码(如果愿意)。我想向这个数据框添加一个新的列,并基于这些掩码用普通整数(“成员身份”指示符)填充它。在最直接的方法中,我将使用以下代码:
df.assign(membership=3)
df[mask1].membership = 0
df[mask2].membership = 1
df[mask3].membership = 2
这将生成一个列(df["membership"]
),如下所示:
掩码由函数创建(使用数据帧中的其他列创建输出)作为字典,如下所示:
maskDict = {0:mask1, 1:mask2, 2:mask3}
其中mask(1..3)
是包含[True,False,...]
等大小的数组
我知道可能不需要改进代码。但是,当比较更多的条件时,我会在字典中得到更多的布尔数组。在
将该功能应用于数据帧并设置这些值的就地解决方案也将得到赞赏。在
使用^{} :
如果输入是
^{pr2}$dict
:相关问题 更多 >
编程相关推荐