我有一个包含数千行的数据帧df
,示例如下:
Index A B C D E F
EX-A.1.A.B-1A 18 7 2 2 9 8
EX-A.1.A.B-1C 0 0 0 0 0 0
EX-A.1.A.B-4A 6 4 8 6 1 1
EX-A.1.A.B-4C 0 0 0 0 0 0
EX-A.1.A.B-4F 0 0 0 0 0 0
我还有一个列表my_list = ["EX-A.1.A.B-1A","EX-A.1.A.B-4A","EX-A.1.A.B-4F"]
并且我想基于该列表过滤df
,因此我想保留其索引值在列表my_list
中的行。
我尝试这样做是为了创建新的过滤后的df:Filter_df = df[df.index in my_list]
,但出现此错误:
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all().
关于如何做到这一点的任何想法?谢谢
答案 0 :(得分:1)
尝试:
Filter_df = df[df.index.isin(my_list)]