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.')
相关推荐
weixin_3077791322 分钟前
C++代码实现MATLAB中的dlarray函数功能
开发语言·c++·算法·matlab
一水鉴天3 小时前
映射、哈希表与哈斯图:计算机科学的三种基线 20261003(元宝)
开发语言·人工智能
Frank_refuel4 小时前
C++11之一场名为“搬家”的 C++ 之旅
开发语言·c++
海绵宝宝转agent4 小时前
learn-claude-code第1-5章开源学习笔记分享
人工智能·笔记·python·学习
小奇不哭4 小时前
ROS2 单节点,RGB-D 深度相机局部路径提取 + B 样条平滑路径 + YOLOv8 障碍物检测 + 深度测距,用于移动机器人视觉局部循迹。
python·yolov8·ros2·cv2·路径探索循迹
小小龙学IT4 小时前
Python scikit-learn 机器学习库深度解析
python·机器学习·scikit-learn
Wang's Blog5 小时前
Java 项目实战: 外卖平台优化-Nginx配置文件结构与块层级
java·开发语言·nginx
2601_962071575 小时前
类变量和全局变量的查找路径有什么区别?
开发语言·python
卷无止境6 小时前
独立开发者的"富矿地带":哪些垂直领域值得你押注一辈子?
后端·python
\光辉岁月/6 小时前
5.java-数组
java·开发语言