首页 > 解决方案 > DataFrame 是如何产生这个结果的?

问题描述

第 1 步:显示前 10 行:

In [13]: data[:10]
Out[13]: 
   admit  gre   gpa  rank
0      0  380  3.61     3
1      1  660  3.67     3
2      1  800  4.00     1
3      1  640  3.19     4
4      0  520  2.93     4
5      1  760  3.00     2
6      1  560  2.98     1
7      0  400  3.08     2
8      1  540  3.39     3
9      0  700  3.92     2

第 2 步:列出所有排名为 1 的行

 In [15]: data["rank"]==1
    Out[15]: 
    0      False
    1      False
    2       True
    3      False
    4      False
    5      False
    6       True
    7      False
    8      False
    9      False
    10     False

第 3 步:生成 rank=1 的行列表

In [16]: data[data["rank"]==1]
Out[16]: 
     admit  gre   gpa  rank
2        1  800  4.00     1
6        1  560  2.98     1
11       0  440  3.22     1
12       1  760  4.00     1
14       1  700  4.00     1
19       1  540  3.81     1
25       1  800  3.66     1
26       1  620  3.61     1
29       0  520  3.29     1

我不明白第 3 步。为什么 data[boolean] 会生成 rank==1 的实际行?

标签: pythonpandas

解决方案


因为它起到了面具的作用。看看这个熊猫参考


推荐阅读