Python numpy中布尔索引的问题。

布尔索引布尔数组作为数组的索引时,会根据布尔数组的True False值,选择对应轴上的数据进行筛选


  • 一个dataframe的数组
   _heartbeat_                                                  a  \
0          NaN  Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKi...   
1          NaN                             GoogleMaps/RochesterNY   
2          NaN  Mozilla/4.0 (compatible; MSIE 8.0; Windows NT ...   
3          NaN  Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8)...   
4          NaN  Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKi...   
...
3559
               al   c          cy       g  gr       h            hc  
0  en-US,en;q=0.8  US     Danvers  A6qOVH  MA  wfLQtf  1.331823e+09   
1             NaN  US       Provo  mwszkS  UT  mwszkS  1.308262e+09   
2           en-US  US  Washington  xxr3Qb  DC  xxr3Qb  1.331920e+09   
3           pt-br  BR        Braz  zCaLwp  27  zUtuOu  1.331923e+09   
4  en-US,en;q=0.8  US  Shrewsbury  9b6kNl  MA  9b6kNl  1.273672e+09   
...
3559
  • 一个布尔数组
0        True
1        True
2        True
3        True
        ...  
3555     True
3556     True
3557     True
3558     True
3559     True

问题

cSeries = df[df.a.notnull()]

这一步,是对行进行了筛选,为什么就默认轴是行呢?是因为布尔数组的元素个数是行数个所以默认对行进行筛选吗?如果(假如一种情况)布尔数组的元素个数是列数个呢,是对列进行筛选吗?

阅读 3.8k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题