首先创建一个DataFrame
import pandas as pd
data = [[1,2,3],[4,5,6]]
index = [1,2]
columns = ['a','b','c']
df = pd.DataFrame(data=data, index=index, columns=columns)
a b c
1 1 2 3
2 4 5 6
df.loc[3] = (df>2).sum(axis=0)
a b c
1 1 2 3
2 4 5 6
3 1 1 2
loc()
进行行操作,sum()
统计 axis = 0 轴(即列)的 df > 2 的个数
df.loc[:,'d'] = (df>2).sum(axis=1)
a b c d
1 1 2 3 1
2 4 5 6 3
3 1 1 2 0
loc()
也可以进行列操作,sum()
统计 axis = 1 轴(即行)的 df > 2 的个数
直接df.['d'] = (df>2).sum(axis=1)
会报错,所以不能通过此方式创建新列
但可以通过df.['e'] = df.a / df.b
可以直接创建新列
loc()
函数会直接对 df 进行修改,可以使用df_new = df.copy()
进行复制,在 df_new 上进行操作,以防万一