ITPub博客

首页 > 大数据 > 数据分析 > axis = 0,axis = 1 DataFrame结构轴的概念

axis = 0,axis = 1 DataFrame结构轴的概念

数据分析 作者:melody 时间:2019-03-06 23:39:58 0 删除 编辑

官方帮助的解释:

轴用来为超过一维数组定义的属性,二维数据拥有两个轴:第0轴沿着行的方向垂直向下,第1轴沿着列的方向水平延申。

根据官方的说法,1表示横轴,方向从左到右;0表示纵轴,方向从上到下。当axis=1时,数组的变化是横向的,体现出列的增加或者减少。反之,当axis=0时,数组的变化是纵向的,体现出行的增加或减少。

下图为dataframe中axis为0和1时的图示:

                                   

实例:

df = pd.DataFrame([[1, 1, 1, 1], [2, 2, 2, 2], [3, 3, 3, 3]],
                  columns=['col0','col1','col2','col3'])
>>>df

                

df.mean(axis=1)
>>>
0    1.0
1    2.0
2    3.0
dtype: float64
 
df.mean(axis=0)
>>>
col0    2.0
col1    2.0
col2    2.0
col3    2.0
dtype: float64
 
df.drop('col2',axis=1)
>>>

          

df.drop(0,axis=0)
>>>

         

用法:DataFrame.drop(labels=None,axis=0, index=None, columns=None, inplace=False)

所以,axis的重点在于方向,而不是行和列,具体体现到各种用法也是如此。

np.arange(24).reshape(2,3,4)
>>>
array([[[ 0,  1,  2,  3],
        [ 4,  5,  6,  7],
        [ 8,  9, 10, 11]],
 
       [[12, 13, 14, 15],
        [16, 17, 18, 19],
        [20, 21, 22, 23]]])
 
#生成面板数据
c = pd.Panel(np.arange(24).reshape(2,3,4))
c
<class 'pandas.core.panel.Panel'>
Dimensions: 2 (items) x 3 (major_axis) x 4 (minor_axis)
Items axis: 0 to 1
Major_axis axis: 0 to 2
Minor_axis axis: 0 to 3
 
#对Items axis轴的数据进行操作,也就是panel里面的0轴:
c.sum(axis = 0)
>>>
    0   1   2   3
0  12  14  16  18
1  20  22  24  26
2  28  30  32  34
 
#对Major_axis axis轴的数据进行操作
c.sum(axis = 1)
>>>
    0   1
0  12  48
1  15  51
2  18  54
3  21  57
 
#对Minor_axis axis轴的数据进行操作
c.sum(axis = 2)
>>>
    0   1
0   6  54
1  22  70
2  38  86

 

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69910834/viewspace-2637756/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2019-02-19

  • 博文量
    2
  • 访问量
    3649