0
我有單詞['light','medium','heavy']的列表,我試圖隔離多個數據框中可能出現這些單詞的列。該dataframes:隔離列表中包含單詞的每一列
df1
1 | 2 | 3 | 4 | 5 | REF
'light' 'medium' 'heavy' 2c17
26 42 15 2c17
32 52 19 2c17
24 37.9 10 2c17
df2
1 | 2 | 3 | 4 | 5 | REF
21 23 2c16
'medium' 'heavy' 2c16
52 19 2c16
37.9 10 2c16
df3
1 | 2 | 3 | 4 | 5 | REF
'light' 3c16
21 3c16
22 3c16
23 3c16
從本質上講,如果列包含從表中的詞,然後找出他們。期望的輸出:
df1
2 | 3 | 4 | REF
'light' 'medium' 'heavy' 2c17
26 42 15 2c17
32 52 19 2c17
24 37.9 10 2c17
df2
| 3 | 4 | REF
21 23 2c16
'medium' 'heavy' 2c16
52 19 2c16
37.9 10 2c16
df3
1 | REF
'light' 3c16
21 3c16
22 3c16
23 3c16
到目前爲止我的代碼,其中SH1是dataframes的列表:
listofnewdf = []
for num in range(len(sh1)):
for i in range(len(sh1[num].columns)):
if pd.Series.any(sh1[num].iloc[:,i].str.contains(pat="light|medium|heavy")):
listofnewdf.append(pd.DataFrame({sh1[num].columns[i]:sh1[num].iloc[:,i],sh1[num]})
然而這產生單獨dataframes每個關鍵字。任何幫助表示讚賞。
輝煌,謝謝大家。如果我正確地分解代碼,df.isin()。any()正在查找單詞列表的真實位置?我不知道df.loc可以採取布爾值 – codeninja
@codeninja事實上你是對的。很高興我能幫上忙。 –