選擇行:get subsection of df based on multiple conditions使用系列從這個線程繼續DF大熊貓
我想拉基於其存儲在一個系列的對象多個條件給定的行。
columns = ['is_net', 'is_pct', 'is_mean', 'is_wgted', 'is_sum']
index = ['a','b','c','d']
data = [['True','True','False','False', 'False'],
['True','True','True','False', 'False'],
['True','True','False','False', 'True'],
['True','True','False','True', 'False']]
df = pd.DataFrame(columns=columns, index=index, data=data)
df
is_net is_pct is_mean is_wgted is_sum
a True True False False False
b True True True False False
c True True False False True
d True True False True False
我的條件:
d={'is_net': 'True', 'is_sum': 'True'}
s=pd.Series(d)
預期輸出:
is_net is_pct is_mean is_wgted is_sum
c True True False False True
我的失敗嘗試:
(df == s).all(axis=1)
a False
b False
c False
d False
dtype: bool
不知道爲什麼 'C' 是假的兩個條件時,遇到了。
請注意,我可以達到所需的結果,但我寧願使用Series方法。
df[(df['is_net']=='True') & (df['is_sum']=='True')]
將這項工作,如果有超過2,但少LEN(df.columns)? –
對不起,如果您有更多條件但總條件少於列數,您能解釋一下嗎?如果是這樣,是不是一樣? – EdChum
對不起,超過2個條件。太好了,我會試試看。 –