统计Excel文件中的答案选项和类别

功能

本脚本主要完成以下功能:

  • 读取指定的Excel文件。
  • 从Excel文件中提取问题和答案选项。
  • 统计每个问题的答案选项分布。
  • 按类别细分每个答案选项的计数。
  • 将统计结果输出到JSON文件。

使用方法

要使用该脚本,用户需要提供以下信息:

  • Excel文件的路径。
  • 期望输出的JSON文件的路径。

脚本将自动执行统计操作,并将结果保存到指定的JSON文件中。

示例代码

python 复制代码
import pandas as pd
import json

def count_answers_and_categories(file_path, output_json_file):
    # 读取Excel文件
    df = pd.read_excel(file_path, engine='openpyxl')

    # 获取问题列的列名
    questions = df.iloc[0, 3:-1].index.tolist()

    # 初始化一个字典来存储统计结果
    result = {}

    # 职务类别列表
    categories = ["类别一", "类别二", "类别三"]

    # 答案选项列表
    answers = ["选项A", "选项B", "选项C", "选项D", "选项E"]

    # 遍历每个问题
    for question in questions:
        # 初始化答案选项的计数和类别计数
        answer_counts = {answer: 0 for answer in answers}
        answer_category_counts = {answer: {category: 0 for category in categories} for answer in answers}

        # 遍历DataFrame的行(从第二行开始)
        for index, row in df.iloc[1:].iterrows():
            answer_option = row[question]
            category_option = row[1]

            # 确保答案选项和类别都在列表中
            if answer_option in answers and category_option in categories:
                answer_counts[answer_option] += 1
                answer_category_counts[answer_option][category_option] += 1

        # 将统计结果添加到结果字典中
        result[question] = {
            'answer_counts': answer_counts,
            'answer_category_counts': answer_category_counts
        }

    # 保存结果到JSON文件
    with open(output_json_file, 'w', encoding="utf-8") as json_file:
        json.dump(result, json_file, ensure_ascii=False, indent=4)

# 示例文件路径
file_path = './example.xlsx'
output_json_file = './example_answers_and_categories.json'

# 调用函数
count_answers_and_categories(file_path, output_json_file)

JSON输出示例

输出的JSON文件将包含每个问题的统计信息,例如:

json 复制代码
{
    "问题1": {
        "answer_counts": {
            "选项A": 10,
            "选项B": 15,
            "选项C": 5,
            "选项D": 2,
            "选项E": 0
        },
        "answer_category_counts": {
            "选项A": {
                "类别一": 3,
                "类别二": 4,
                "类别三": 3
            },
            "选项B": {
                "类别一": 5,
                "类别二": 7,
                "类别三": 3
            },
            // ... 更多答案选项和类别计数
        }
    },
    // ... 更多问题的统计信息
}

结论

通过这个脚本,我们可以快速地从Excel文件中提取和统计答案选项及职务类别的分布情况,并将结果以JSON格式保存,便于进一步的分析和处理。


上述代码和文档中的文件路径和问题列表是示例性的,需要根据实际情况进行调整。在运行脚本之前,请确保您的环境中已安装了 pandasopenpyxl 库。

水平有限,有问题随时交流;

相关推荐
破z晓17 小时前
javascript 导出excel表
开发语言·javascript·excel
Am-Chestnuts21 小时前
豆包多轮回答中的表格导出 Excel:编号、日期与长数字检查
excel
hPw0eKIqD1 天前
使用二次封装的Excel COM 组件操作Excel\WPS ET中的区域、行和列
excel·wps
冰心孤城2 天前
Excel: xls与xlsx格式转换排坑指南
java·前端·excel
金豆呀2 天前
WPS批量提取Word文档内容生成固定格式Excel表格
word·excel·wps
Access开发易登软件2 天前
Access 怎么做前后端分离?用 Web API 读写 SQL Server
前端·数据库·人工智能·microsoft·excel·access
红莲凪是3 天前
使用二次封装的Excel COM 组件操作Excel\WPS ET IExcelRange 高级应用
python·excel·wps
用户298698530143 天前
如何使用免费工具在线将 Excel 转换为 XML 格式
人工智能·后端·excel
开开心心就好3 天前
内存清理工具定时自动清理开机自启动
java·开发语言·elasticsearch·ocr·excel·音视频·big data
开开心心就好3 天前
电脑内存优化工具一键释放内存超简单
java·开发语言·macos·arcgis·ocr·excel·音视频