【发布时间】:2022-01-19 11:58:18
【问题描述】:
我有一个熊猫数据框df。如果flsa_w_gk 或flsa_w_fcm 包含在df['model'] 中,我想从df 获取一个子集。
对于只有一个字符串,我会这样做:
mask = df['model'].str.contains('FLSA_W_fcm', case=False, na=False)
subset = df[mask]
以下方法可行,但似乎太冗长:
mask1 = df['model'].str.contains('FLSA_W_fcm', case=False, na=False)
subset1 = df[mask1]
mask2 = df['model'].str.contains('FLSA_W_gk', case=False, na=False)
subset2 = df[mask2]
frames = [subset1, subset2]
subset = pd.concat(frames)
有没有办法使用更少的代码行来做到这一点?
【问题讨论】:
-
您可以在字符串包含中使用
|(或)。str.contains('FLSA_W_fcm|FLSA_W_gk')
标签: python pandas concatenation subset