import pandas as pd
1. 将excel数据录入python
book = pd.read_excel(r'文件地址')
若原表格如下
姓名 | 成绩1 | 成绩2 | 排名 |
a | 100 | 60 | 2 |
b | 90 | 75 | 1 |
c | 95 | 65 | 2 |
d | 80 | 85 | 1 |
导入后excel如下
姓名 | 成绩1 | 成绩2 | 排名 | |
0 | a | 100 | 60 | 2 |
1 | b | 90 | 75 | 1 |
2 | c | 95 | 65 | 2 |
3 | d | 80 | 85 | 1 |
[4 rows x 4 columns]
若要后续要引用,可以调整为其他格式。此处以字典为例:
book_dict = book.to_dict()
运行结果类似↓:
{'姓名':{0:'a',1:'b',2:'c',3:'d'}, '成绩1': ...}
2. 将数据导入excel
pandas库导出使用DataFrame,因此无论之前是什么格式,要转化为合适的形式使用函数转化为DataFrame
此处以字典为例子。
利用上面那个表格,我们需要字典表现形式类:
导入excel为
a | b | c |
n1 | n4 | n7 |
n2 | n5 | n8 |
n3 | n6 | n9 |
但是python中数据为:
l1 = [
{'a': 'n1','b': 'n4', 'c':'n7'},
{'a': 'n2','b': 'n5', 'c':'n8'},
{'a': 'n3','b': 'n6', 'c':'n9'}
]
具体代码如下:
# 提取目标字典的keys
response_dict = l1[0]
title = list(response_dict.keys())
# 利用提取的keys建立存储values的二维列表
l = [list() for i in range(len(title))]
for item in l1:
items = list(item.values())
for j in range(len(title)):
l[j].append(items[j]) # 将每个key对应的values存储进去
# 构造目标字典data
data = dict(zip(response_dict.keys(), l))
# 字典转化为DataFrame
df = pd.DataFrame(data)
# 输出excel
df.to_excel('test.xlsx')
各个变量的内容如下:
捉虫日志:
2024/01/12: 删除代码重复部分