如何解决如何在不修改第一行的情况下使用熊猫将excel文件转换为csv文件?
我正在尝试将多个excel文件转换为csv文件。但是,使用下面的代码时,熊猫在修改第一行中的值时遇到问题。
for i in path_list:
df = pd.read_excel(i)
df.to_csv(i[:-5]+".csv",index = None,header=True)
以下是熊猫如何修改第一行值的示例。
Excel:
1 1 1 2 2 2
21 32 3 54 6 86
CSV:
1 1.1 1.2 2 2.1 2.2
21 32 3 54 6 86
如何解决此问题,以便CSV文件中的值与excel文件中的值完全相同。
解决方法
看起来您的excel
具有重复的列名。因此,当您将excel
读入df
时,它会将.1,.2
附加在所有重复的列名之后。
您可以通过以下方法进行修复:
for i in path_list:
df = pd.read_excel(i)
df.columns = df.columns.astype(str).str.split('.').str[0]
df.to_csv(i[:-5]+".csv",index = None,header=True)
df.columns = df.columns.astype(str).str.split('.').str[0]
命令将从重复的列名中删除.1,.2
,并使它们保持与excel相同的方式。
同样也会在您的csv
中写入。