首页 > 解决方案 > Python将不同的列值作为行值写入excel

问题描述

我有一个包含多列和多行的 excel。我正在尝试读取每一行并将某些选择列的值写入行值。例如 :

这是我正在阅读的excel: 输入

我正在尝试将输出作为 csv 或 excel:

输出

我曾尝试一次循环并编写每个内容,但它不起作用:

for index, row in df.iterrows():
     df[['UNIQUE_ID']].to_excel('U:/IMAT/test3.xlsx', sheet_name='Sheet1', header=None, index=False,
             startcol=1,startrow=i)
i+=1
df[['SENDING_FACILITY']].to_excel('U:/IMAT/test3.xlsx', sheet_name='Sheet1', header=None, index=False,
             startcol=1,startrow=i)
i+=1

这似乎不起作用,只写第二条语句。感谢您的任何帮助 !!

标签: pythonexcelpandasvba

解决方案


尝试这个:

df_new=pd.DataFrame(columns=["col_1","col_2"])
for i,j in df.iterrows():
    df_new=df_new.append({"col_1":j["UNIQUE_ID"]},ignore_index=True)
    df_new=df_new.append({"col_1":j["SENDING_FACILITY"],"col_2":j["SENDING_CODE"]},ignore_index=True)
df_new.to_excel('U:/IMAT/test3.xlsx', sheet_name='Sheet1', header=None, index=False)

推荐阅读