說我有一個熊貓數據幀和字典如下定義:索引上,在大熊貓數據幀相依爲命多個參數
import pandas as pd df = pd.DataFrame({ "c1": np.array(['a','a','b','b','a']) , "c2" : np.array([1,2,2,2,2])})
c1 c2
0 a 1
1 a 2
2 b 2
3 b 2
4 a 2
to_keep = {'a':[1],'b':[2,3]}
{'a': [1], 'b': [2, 3]}
我想保留這些元素其中鍵和to_keep
的價值之一是真實的。換句話說,我希望得到以下數據框:
c1 c2
0 a 1
2 b 2
3 b 2
我已經嘗試了很多東西,比如df[(df["c1"] in to_keep.keys) and df["c2"] in to_keep["c1"]]
,但事情是我不能正確的參數傳遞給to_keep字典能得到相應的價值。我曾經想過做的c1
和c2
所有可能的組合的名單,但可能是有點低效率的關於數據集的大小我有。
有什麼建議嗎?
看起來不錯。但它(最)效率高嗎?如果'a'和'b'的組合數量非常大? – Guido