ihi*_*wer 8 python pandas pandas-groupby
嗨,我有一个过滤器“m”集,它足够灵活,可以由我进行更改。有时,我想按 Car 或 x_acft_body 或任何其他各种字段等进行过滤。有时我想通过注释和取消注释所需的行来返回所有行。但不更改后续代码,在过滤器 'm' 行之后。
当我不想应用过滤器时,我如何才能拥有一个对所有行都返回 true 的过滤器?例如,类似的东西,1==1但我知道这行不通。
我不想设置dfdata.somefield.notnull()等等,因为我不太确定这个字段是否总是不为空。我也不想将后续代码更改为dfdata.groupby. ie 没有[m]
# set filter if needed
m = ( 1==1 #& return true at all times
# (dfdata.Car == 'PG') #&
# (dfdata.x_acft_body == 'N')# &
# (dfdata.Car.isin(['PG', 'VJ', 'VZ']))
)
dft1 = dfdata[m].groupby(['FLD1']).agg({'FLD2': 'count'})
Run Code Online (Sandbox Code Playgroud)
jez*_*ael 10
您可以创建 bool 常量并通过它更改最终掩码:
#True for return all rows
m = (dfdata.Car == 'PG') | True
Run Code Online (Sandbox Code Playgroud)
和:
#False for apply filter
m = (dfdata.Car == 'PG') | False
Run Code Online (Sandbox Code Playgroud)
第一种解决方案:
m = [True] * len(df.index)
Run Code Online (Sandbox Code Playgroud)
m = np.repeat(True, len(df.index))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1972 次 |
| 最近记录: |