我编写了这段代码来从一个 excel 文件中提取数据,并再次准备另一个带有提取的 ID、版本、阶段的 excel 文件。它提取它但错误地放置在excel中。它将值与索引一起放入excel中所有ID在一个单元格中所有版本在一个单元格中所以我希望它位于Id列下方的不同行
这是我的代码[输入文件链接](https://drive .google.com/file/d/1ZrUbftMppFf8L3jgWl2i8bsgUavOHnkZ/view?usp=sharing ) [输出文件链接] ( https://drive.google.com/file/d/1BoUiICzRgkX3AN9OcRIEDnh9c3qKNL3l/view?usp=sharing )
import pandas as pd
cols = ['ID']
vals = ['Version']
phas = ['Phase']
id_index_list = []
id_list = []
verindex_list = []
version_list = []
phaseindex_list = []
phases_list = []
tolist = []
df_pver = pd.read_excel('pver.xlsm', 'PVP', header = None)
#Name of Project
dz= df_pver.iloc[[0],[0]]
#Finding ID
dy= df_pver.xs(0)
for id in dy:
if 'ID' in str(id):
#ID list Finding location of Column where ID exists
zr= dy[dy==id].index.values
for item in zr:
if not item in id_index_list:
id_index_list.append(item)
mylist = [df_pver.xs(0)[id_index_list]]
#finding the location of ID and moving 3 column aside to find the Version
ze= dy[dy==id].index.values + 3
for item in ze:
if not item in verindex_list:
verindex_list.append(item)
mylist2 = [df_pver.xs(0)[verindex_list]]
#findind the phase the project is in
zp= dy[dy==id].index.values + 1
for item in zp:
if not item in phaseindex_list:
phaseindex_list.append(item)
mylist3 = [df_pver.xs(1)[phaseindex_list]]
id_list.append(mylist)
version_list.append(mylist2)
phases_list.append(mylist3)
a = pd.DataFrame(id_list, columns = cols)
b = pd.DataFrame(version_list, columns = vals)
c = pd.DataFrame(phases_list, columns = phas)
此代码正在查找我需要但错误地给出输出的数据。
excel中的输出是
id version required
0 17 X 18 Y 22 Z 20 1 21 2 24 3 18 gantt 19 Pie 23 ipex
但我希望它像这样,没有索引也分成不同的行,而不是全部在一个单元格中。
id version required
0 X 1 gantt
1 Y 2 Pie
2 Z 3 ipex
有人可以帮忙吗
婷婷同学_
相关分类