一,计算各列数据总和并作为新列添加到末尾。
df['Col_sum'] = df.apply(lambda x: x.sum(), axis=1)
或:
#定义获取各科成绩最大值的函数
def getMax(row):
return max(row["Chinese"],row["Math"],row["English"],row["PE"])
df["max"]=df.apply(lambda row:getMax(row),axis=1)
二,计算各行数据总和并作为新行添加到末尾
df.loc['Row_sum'] = df.apply(lambda x: x.sum())
注:也可以用其他的聚合函数。
原文:https://www.cnblogs.com/wuzhiblog/p/python_new_row_or_col.html
三;pandas 使用apply同时处理两列数据
df = pd.DataFrame ({'a' : np.random.randn(6),
'b' : ['foo', 'bar'] * 3,
'c' : np.random.randn(6)})
def my_test(a, b):
return a + b
df['Value'] = df.apply(lambda