python实现excel数据自动统计

  • 读取数据 :首先,使用pandas读取Excel文件中的数据。

  • 分组 :使用groupby根据指定的分组列对数据进行分组。

  • 统计次数:自动统计每组的指定列中每个唯一值出现的次数,和统计满足特定条件的计数

  • **保存:**将需要的统计结果保存在新的文件中

python 复制代码
import pandas as pd

# 定义一个函数来计算特定值组合的计数  
def count_specific_values(group, target_rs, target_lcd_s):  
    # 筛选特定值组合的行  
    filtered = group[(group['rs'] == target_rs) & (group['lcd_s'] == target_lcd_s)]  
    # 返回计数  
    return len(filtered)


file_path_1 = r'1.xlsx'  
sheet_name_1 = 'a' 
file_path_2 = r'2.xlsx'  
sheet_name_2 = 'b' 

df_succes = pd.read_excel(file_path_1,sheet_name=sheet_name_1)
df2_fail = pd.read_excel(file_path_2,sheet_name=sheet_name_2)

# 合并数据
df_data_total = pd.concat([df_succes, df2_fail], axis=0)

# 按name号分组
grouped_data = df_data_total.groupby("name")

# 使用pivot_table计算每个name组中的数据
auth_pivot_table = grouped_data["rs"].value_counts().unstack(fill_value=0) #rs的值分为0 2 4

# 计算0的次数
auth_pivot_table['0_cnt'] = auth_pivot_table[0]

# 计算2的次数
auth_pivot_table['2_cnt'] = auth_pivot_table[2]

# 计算4的次数
auth_pivot_table['4_cnt'] = auth_pivot_table[4]

# 计算AA次数
auth_pivot_table['AA'] = grouped_data.apply(lambda x: count_specific_values(x, 0, 2))

# 重置索引
auth_pivot_table.reset_index(inplace=True)

#选取特定列输出
result = auth_pivot_table[['name', '0_cnt', '2_cnt', '4_cnt', 'AA']]

# 重命名列名
result.columns = ['name', '0_cnt', '2_cnt', '4_cnt', 'AA']

# 保存结果到Excel文件
result.to_excel("name.xlsx")
print('save succ.')
相关推荐
henrylin99992 分钟前
美股日线选股器 — 项目概览
python·量化·us_stock
-Thinker5 分钟前
【无标题】
java·开发语言·算法·图搜索
王五周八8 分钟前
Tesseract OCR的Java使用(附安装包,非常详细)
java·开发语言·ocr
一直奔跑在路上9 分钟前
深入浅出RDMA:原理、应用与实战指南
开发语言·php
乐观勇敢坚强的老彭17 分钟前
2026全国青少年信息素养大赛(Python小学组)复赛复习讲义
python·算法·数学建模
j7~18 分钟前
【C++】STL--string类--拆析解剖string类的实现以及string类的底层详解(2)
开发语言·c++·浅拷贝·深拷贝·string类的实现·string拷贝构造·string赋值重载
程序员二叉27 分钟前
【JUC】AQS底层深度拆解|独占/共享模式|队列原理全详解
java·开发语言·面试·juc
踏着七彩祥云的小丑29 分钟前
Go 学习第6天:结构体 + 切片 + range遍历
开发语言·学习·golang·go
北极星日淘30 分钟前
Python代理池动态适配日淘爬虫|解决高频抓取IP封禁终极方案(含完整源码)
爬虫·python·tcp/ip
读书札记202232 分钟前
Qt中windeployqt.exe工具的使用:解决使用CMake创建的项目点击exe文件后系统提示0xc000007b的问题
开发语言·qt