数据分析Numpy分析 作业04 20200825
任务:在 files 文件夹下有多个文件,需要通过代码获取文件名称列表并且将文件数据进行 行堆叠 ,并保存到新的文件中
import numpy as np
import os
def file_names(file_dir):
for root, dirs, files in os.walk(file_dir):
# 当前目录路径
print(root)
# 当前路径下所有子目录
print(dirs)
# 当前路径下所有非目录子文件
print(files)
return files
def vstack_data(filelist:list):
n=1
vlist=[]
for data in filelist:
if n==1:
datax=np.loadtxt(f"{data}",delimiter=",",dtype="object")
else:
datax=np.loadtxt(f"{data}",delimiter=",",skiprows=1,dtype="object")
n+=1
vlist.append(datax)
v_data=np.vstack(vlist)
new_filename=input('Please write a new name for the file') #自定义文件名
np.savetxt(new_filename + '.csv',v_data,delimiter=',',fmt="%s")
return v_data
if __name__ == '__main__':
file_list=file_names("./files")
#['云南白药.csv', '五粮液.csv']
a=vstack_data(file_list)
print(a.shape)
#output (311,11)