Pandas的axis参数的理解

Pandas的axis参数怎么理解?
  • axis=0或者"index":
    • 如果是单行操作,就指的是某一行
    • 如果是聚合操作,指的是跨行cross rows
  • axis=1或者"columns":
    • 如果是单列操作,就指的是某一列
    • 如果是聚合操作,指的是跨列cross columns

按哪个axis,就是这个axis要动起来(类似被for遍历),其它的axis保持不动

1、数据准备
import pandas as pd
import numpy as np

df = pd.DataFrame(
    np.arange(12).reshape(3,4),
    columns=['A', 'B', 'C', 'D']
)
print(df)
image.png
2、单列drop,就是删除某一列
a = df.drop("A",axis = 1)
print(a)
删除A这一列
3、删除某一行,注意变量为a,不是df,代码分开写,但是前后关联
b = a.drop(1,axis = 0)
print(b)
在删除A列的基础上,删除1这一行
4、按axis=0/index执行mean聚合操作,与第二、第三步代码无关
c = df.mean(axis = 0)
print(c)
image.png

axis = 0,代表跨行梳出列结果,列不动行被打破
d = df.mean(axis = 1)
print(d)
image.png

axis = 1,跨列梳出行结果
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)

你可能感兴趣的:(Pandas的axis参数的理解)