我在一个目录中有多个.txt文件,我想通过在python中导入将它们合并成一个文件。这里的问题是,在合并之后,我希望将其转换为一个csv文件,整个程序都基于该文件。
到目前为止,我只需要输入一个.txt文件,并通过以下代码将其转换为csv文件:
import io
bytes = open('XYZ.txt', 'rb').read()
df=pd.read_csv(io.StringIO(bytes.decode('utf-8')), sep='\t', parse_dates=['Time'] )
df.head()现在我需要输入多个.txt文件,合并它们,然后将它们转换为csv文件。有什么解决方法吗?
发布于 2018-07-12 13:33:50
如果头文件是相同的,那么就应该像下面这样简单
import os
import io
merged_df = pd.DataFrame()
for file in os.listdir("PATH_OF_DIRECTORY"):
if file.endswith(".txt"):
bytes = open(file, 'rb').read()
merged_df = merged_df.append(pd.read_csv(io.StringIO(
bytes.decode('utf-8')), sep='\t', parse_dates=['Time']))
print(len(merged_df))发布于 2018-07-12 13:35:49
import glob
path="location/of/folder"
allFiles = glob.glob(path + "\\*.txt")
list_ = []
for file in allFiles:
print(file)
df = pd.read_csv(io.StringIO(file.decode('utf-8')), sep='\t', parse_dates=['Time'])
list_.append(df)
combined_files = pd.concat(list_)https://stackoverflow.com/questions/51297877
复制相似问题