众所周知,在进行算法设计时,需要输入数据验证算法的功能,有时数据是现有的数据集,有时是自己输入的测试数据,python中键入数据远没有直接在excel中键入的方便。那么其中涉及的就会有数据的读取以及算法输出结果的保存了。
pandas包内置很多种类型的文件读取,例如csv、xlsx等。废话不多说,将excel文件转化成列表进行操作和列表转excel文件进行存储
1.读取
import os
import pandas as pd
path=os.getcwd()#获取当前绝对路径
df=pd.read_excel(path+'/xxxx.xlsx',None)#读取excel数据
print(df)#可视化excel
sheetname=list(df.keys())#获取该文件的所有表单名(列表存储)
print(sheetname)
df=pd.read_excel(path+'/xxxx.xlsx',sheet_name=sheetname[0])#读取第一个表单
column_name=list(df)#获取列名
print(column_name)
df=pd.read_excel(path+'/xxxx.xlsx',header=None)##读取excel文件,第一行作为数据而不是列名,若第一行是列名,去掉header=None
data=df[[列序号1,列序号2]].values.tolist() ##指定列转列表,若有列名时可将序号列表改成列名列表
print(data)
2.存储
import os
import pandas as pd
path=os.getcwd()#获取当前绝对路径
data=[
[1,2,3],
[4,5,6],
[7,8,9],
]
writer=pd.ExcelWriter(path+'/test.xlsx')
df=pd.DataFrame(data,columns=['列名1','列名2'...'列名n']) #为数据添加列名,
df['列名1','列名2'...'列名n'].to_excel(excel_writer=writer,sheet_name='表单1名') #将固定列存到excel第一个表单
df.iloc[0:len(df),[1,2]].to_excel(excel_writer=writer,sheet_name='表单2名',index=None) #将第二列和第三列存到excel第二个表单,不列名行
writer.close()