相关疑难解决方法(0)

使用值列表从pandas数据框中选择行

可能重复:
如何通过"within"/"in"过滤pandas的数据帧行?

假设我有以下pandas数据帧:

df = DataFrame({'A' : [5,6,3,4], 'B' : [1,2,3, 5]})
df

     A   B
0    5   1
1    6   2
2    3   3
3    4   5
Run Code Online (Sandbox Code Playgroud)

我可以根据特定值进行子集化:

x = df[df['A'] == 3]
x

     A   B
2    3   3
Run Code Online (Sandbox Code Playgroud)

但是我如何根据值列表进行子集化? - 这样的事情:

list_of_values = [3,6]

y = df[df['A'] in list_of_values]
Run Code Online (Sandbox Code Playgroud)

python dataframe pandas

603
推荐指数
5
解决办法
56万
查看次数

Python中根据索引值过滤数据框

我有一个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
Run Code Online (Sandbox Code Playgroud)

我也有一份清单 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(). …
Run Code Online (Sandbox Code Playgroud)

python pandas

34
推荐指数
1
解决办法
7万
查看次数

标签 统计

pandas ×2

python ×2

dataframe ×1