excel表中数据是这样的:
姓名 科目 分数
张三 语文 89
张三 数学 90
李四 数学 84
王五 英语 78
读完后的结果:dict= {'张三':{‘语文’:89,'数学':90},'李四':{'数学':84},'王五':{'英语':78}}
我原来是用openpyxl实现的,每一行逐一读取ABC3个列,然后用setdefault追加。但这个库跑起来太慢了,表格很大的时候(比如100万行),整个读完得半个小时。我了解到pandas和xlrd等库效率比较高,但不知道如何实现,向大家请教。
如何用高效将excel表读入字典?
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- threenewbee 2023-04-14 23:16关注
import pandas as pd # 读入Excel文件 df = pd.read_excel("your_excel_file.xlsx") # 创建一个空字典 result_dict = {} # 在DataFrame对象上进行迭代 for index, row in df.iterrows(): # 从当前行获取姓名,科目和分数数据 name, subject, score = row["姓名"], row["科目"], row["分数"] # 按需创建新字典 if name not in result_dict: result_dict[name] = {} # 在新字典中保存分数 result_dict[name][subject] = score # 输出转换后的字典 print(result_dict)
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 虚幻5 UE美术毛发渲染
- ¥15 CVRP 图论 物流运输优化
- ¥15 Tableau online 嵌入ppt失败
- ¥100 支付宝网页转账系统不识别账号
- ¥15 基于单片机的靶位控制系统
- ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
- ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
- ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
- ¥15 手机接入宽带网线,如何释放宽带全部速度
- ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测