用Python批量读取Excel中的一行并输出为csv文件(解决单独读取一行DataFrame行变列的问题)

帮朋友缓解下机械的复制粘贴工作写出来的代码,看到有大佬说pandas库不建议用循环,但能力有限只能用while语句来实现,所以说运行速度较慢。

import pandas as pd
import numpy as np

in_excel=r'first.xlsx'
#源数据文件
out_excel="newdata.csv"
#输出文件
date=90
#天数
i=0
while i<=date:
    a = pd.read_excel(in_excel, sheet_name=i)
    fc = pd.DataFrame(a)
    newdata = fc.loc[361:361, "1345A":]
    #用切片读取行
    newdata.to_csv(out_excel, index=0, header=0,mode='a')
    i = i + 1

这里要注意的是fc.loc[ ],如果你想要361对应的行,但只输入[361],输出结果是呈列形式,而不是行形式,而连续输出到csv中也只能是按列来不断向下累积,无法达到想要的结果。
在这里插入图片描述

如果输入[361:361]就会得到以行输出的结果,这时候再连续输出到csv中就能自动换行保存。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/c6983127/article/details/107836739