我有一個帶有“名稱”列的資料框(df),并且我有一個單獨的字串串列,其形式如下:
info = ['AAA.123 456.789', 'BBB.987 654.321', 'CCC.321-654.987']
等等。我想使用串列中的字串搜索 df 中的“名稱”列,并將結果存盤在單獨的資料幀 (df2) 中。我用了:
df2 = df.loc[df['Names'].str.contains('|'.join(info))]
然而 df2 的輸出(在 spyder 變數資源管理器中)要么是一個空的資料幀,要么只回傳了一個結果。我不確定如何解決這個問題,所以任何建議都將不勝感激 - 謝謝!
編輯
| 指數 | 姓名 | 數量 1 | 數量 2 | 數量 3 | 數量 4 |
|---|---|---|---|---|---|
| 0 | AAA | 12.3 | 4.56 | 7.89 | 10.1112 |
| 1 | BBB | 3.21 | 65.4 | 98.7 | 1.21110 |
| 2 | CCC | 456.23 | 1.23 | 10101 | 101.112 |
| 3 | 直撥電話 | 6.4 | 3.21 | 0.2029 | 1211.10 |
是 df 內容的示例(它有 6 列和非常多的行)
編輯 2
根據 Serge 在評論中的建議,將“串列”重新標記為“資訊”
uj5u.com熱心網友回復:
你可以這樣做。如果你的 df 是
df = pd.DataFrame({"Names":['AAA.123 456.789', "BBB.987 654.321", "W1234", "A_aa_1 .", "Z54"], "col1":[1,2,3,4,5]})
info = ['AAA.123 456.789', 'BBB.987 654.321', 'CCC.321-654.987']
和
df2 = df[df['Name'].isin(info)]
給出:
Names col1
0 AAA.123 456.789 1
1 BBB.987 654.321 2
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/367110.html
