1、axis = 0 或者 axis = 'index'
-
如果是单行操作,就是指某一行
-
如果是聚合操作,指的就是跨行corss rows
2、axis = 1 或者 axis = 'columns'
-
如果是单列操作,就是指某一列
-
如果是聚合操作,指的就是跨列corss columns
按哪个axis,就是这个axis要动起来(类似被for遍历),其他的axis保持不动
import pandas as pd import numpy as np df = pd.DataFrame( np.arange(12).reshape(3, 4), columns=['A', 'B', 'C', 'D'] ) print(df) # 1. 单列drop,就是删除某一列 # 代表的就是删除某列 print('*' * 50) print(df.drop('A', axis=1)) # 2. 单行drop, 就是删除某行 # 代表的就是删除某行 print('*' * 50) print(df.drop(1, axis=0)) # 3. 按axis=0/index执行mean聚合操作 # 反直觉:输出的不是每行的结果,而是每列的结果 print('*' * 50) print(df.mean(axis=0)) # 4. 按axis=1/columns执行聚mean合操作 # 反直觉:输出的不是每行的结果,而是每列的结果 print('*' * 50) print(df.mean(axis=1)) # 5. 再次举例,加深理解 print('*' * 50) def get_sum_value(x): return x['A'] + x['B'] + x['C'] + x['D'] df['sum_value'] = df.apply(get_sum_value, axis=1) print(df)