如何使用Python将excel(.xls)文件中需要提取关键字的行转换为列?

2024-04-27 04:15:23 发布

您现在位置:Python中文网/ 问答频道 /正文

假设我有一个excel文件,如下所示:

enter image description here

如果无法查看图像链接,则excel文件基本如下:

Name       XXX
Age        XXX
Gender     XXX
Job        XXX
Location   XXX
...        ...
...        ...

(重复“姓名、年龄、性别、工作、地点”列表)文件中至少有1000个或更多列表。“XXX”代表列表中每个字段对应的内容。在

我在网上搜索了行到列的转换,在excel中找到了名为“transpose”的粘贴函数。但是,它非常简单,因为它将所有行转换为列。在

我想做的是只有5列,列名包括姓名、年龄、性别、工作和地点。在


Tags: 文件name图像列表age链接joblocation
1条回答
网友
1楼 · 发布于 2024-04-27 04:15:23
import numpy as np
import pandas as pd
import openpyxl
dfs = pd.read_excel('input.xlsx', sheet_name=None,header=None)
tester=dfs['Sheet1'].values.tolist()
keys = list(zip(*tester))[0]
seen = set()
seen_add = seen.add
keysu= [x for x in keys if not (x in seen or seen_add(x))]
values = list(zip(*tester))[1]
a = np.array(values).reshape(int(len(values)/len(keysu)),len(keysu))
list1=[keysu]
for i in a:
    list1.append(list(i))
df=pd.DataFrame(list1)
df.to_excel('output.xlsx',index=False,header=False)

input.xlsx

enter image description here

Output.xlsx

enter image description here

相关问题 更多 >