pandas按列、行求和

Python3.8

Python3.8

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

用透视表创建的表格

df_pt = pd.pivot_table(table,index=["渠道"],values =['推广',
 'E类',
 '0-17岁',
 '18-23岁',
 '24-30岁',
 '30岁+',
 '疾病哺乳类',
 '删除类',
 'B类',
 '男性'],aggfunc = np.sum)

在这里插入图片描述
现在想要对L,Y渠道的每个类别的数据求和,即按行求和

df_pt["总和"] =df_pt.apply(lambda x:x.sum(),axis =1)

对每一列求和

df_pt.loc["列总和"] =df_pt.apply(lambda x:x.sum()) 

对于axis=1在pandas和numpy的理解
在dataframe中,想要drop掉一列,代码为:
df.drop(“列标签”,axis=1)

可在上面的对行求和时 axis=1

对行求和其实是在每一行上取所有列的和,而不是保留每一列的和
即跨列 所以axis=1。
简单的来记就是axis=0代表往跨行(down),
而axis=1代表跨列(across)

换句话说:

使用0值表示沿着每一列或行标签\索引值向下执行方法
使用1值表示沿着每一行或者列标签模向0.行对应的方法
在这里插入图片描述

您可能感兴趣的与本文相关的镜像

Python3.8

Python3.8

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

使用 pandas 对某数据求和有以下几种常见方法: #### 直接使用 `sum()` 方法 对于一个 DataFrame 中的某一,可以直接调用 `sum()` 方法进求和。例如,若有一个 DataFrame `df`,要求其中 `diff` 的和,可以使用 `df['diff'].sum()` [^1]。示例代码如下: ```python import pandas as pd # 创建示例 DataFrame df = pd.DataFrame({ 'diff': [1, 2, 3, 4, 5] }) # 对 diff 求和 sum_result = df['diff'].sum() print(sum_result) ``` #### 读取文件后对某求和 在读取文件(如 Excel 文件)后,也可以对指定求和求和后若需要获取计算结果,有时需要用 `values[0]` 获取。示例代码如下: ```python import pandas as pd # 读取 xls 文件 data = pd.read_excel('your_file.xls', usecols='h') # 从第 2 开始将数据转换为 float 类型并求和 sum_result = data[2:].astype('float').sum().values[0] print(sum_result) ``` #### 对含某字符串的求和 可以根据名包含的字符串筛选出,然后运用 `apply` 和匿名函数进求和。示例代码如下: ```python import pandas as pd # 读取 Excel 文件 data = pd.read_excel("your_file.xlsx") data1 = data.copy() # 根据提取含“分月业绩”字符串的求和 data1["业绩合计"] = data1[data1.columns[data1.columns.str.contains("分月业绩")]].apply(lambda x: x.sum(), axis=1) # 形成表 a = data1[data1.columns[data1.columns.str.contains("分月业绩")]] a1 = (data1.columns[data1.columns.str.contains("分月业绩")]).tolist() a1.insert(0, "业绩合计") # 形成新的 DataFrame A = data1[a1] print(A) ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值