需求描述:
1、读取指定目录下的所有数据集文件
2、读取指定文件,输出文件数据
3、保存到指定目录
实现过程代码如下:
# -*- coding: utf-8 -*-
"""
Created on Thu May 10 17:02:40 2018
@author: admin
"""
import os
import pandas as pd
import gc
# 遍历指定目录,显示目录下的所有文件名
def eachFile(filepath):
pathDir = os.listdir(filepath)
allfilepath=list()
for allDir in pathDir:
child = os.path.join('%s%s' % (filepath, allDir))
allfilepath.append(child)
return allfilepath
#遍历目录下的所有文件
def readFile(filepath):
samp=pd.DataFrame()
for i in filepath:
#读取的文件的文件类型
# df=pd.read_csv(open('%s'%i,encoding='UTF8'))
df=pd.read_excel(r'%s'%i)
df=df.loc[:,['资产订单编号','期数']]
samp=pd.concat([samp,df])
del df
gc.collect()
return samp
#执行函数
'''
每个python模块(python文件,也就是此处的test.py和import_test.py)都包含内置的变量__name__,当运行模块被执行的时候,
__name__等于文件名(包含了后缀.py);如果import到其他模块中,
则__name__等于模块名称(不包含后缀.py)。而“__main__”等于当前执行文件的名称(包含了后缀.py)。
进而当模块被直接执行时,__name__ == 'main'结果为真。
如果我们在作为模块的那个文件中写比如:”if name == ‘ganzhiqi’:”,
其中ganzhiqi是一个作为模块的文件的文件名,那么其后的代码也会执行。
'''
if __name__ == '__main__':
filePath = 'D:/数据分析/'
filepath=eachFile(filePath)
allfile=readFile(filepath)
allfile.to_csv(r'D:/数据分析/allfile.csv')
运行上面简洁的代码,就完成读取数据、整合数据到存放数据的整一套流程,再零散的数据也没有任何问题。
参考地址:http://www.cnblogs.com/jackchiang
来源:CSDN
作者:水绕禅香静
链接:https://blog.csdn.net/weixin_40919057/article/details/80407309