我有以下pd.DataFrame:
AllData =
a@a.6 f@s.2 c@c.2 d@w.4 k@a.3
1 8 3 3 8
4 4 7 4 3
6 8 9 1 6
3 4 5 6 1
7 6 0 8 1
我想创建一个新的pd.DataFrame,其中只有名称为以下字典中的键的列:
my_dict={a@a.6 : value1, c@c.2 : value2, d@w.4 : value5}
所以新的DataFrame将是:
FilteredData =
a@a.6 c@c.2 d@w.4
1 3 3
4 7 4
6 9 1
3 5 6
7 0 8
最有效的方法是什么?
我试过用:
FilteredData = AllData.filter(regex=my_dict.keys)
但不出所料,这不起作用。欢迎任何建议/意见
干杯,亚历克斯
答案 0 :(得分:1)
Pandas数据帧有一个名为filter的方法,它将返回一个新的数据帧。试试这个
FilteredData = AllData.filter(items=my_dict.keys())
答案 1 :(得分:1)
你也可以在没有过滤方法的情况下这样做:
FilteredData = AllData[my_dict.keys()]