我有多个文件,我想成为df和合并/附加到一个单一的df。这些文件有共同的文件名模式,即“SWAT平均地图[Jan 012026]^URTW_L3”。我已通过读取所有文件进行管理,并将添加了文件名的列附加到一个文件中。 然而,对于如何在列中显示日期[2026年1月1日]而不是完整的文件名,我感到困惑。本质上,我们希望将日期从文件名提取到附加的最终df中的datetime格式列中。 正则表达式方法是首选,因为我想学习如何使用
import glob
import os
import re
import pandas as pd
myfiles = glob.glob("C:\\Users\\x\\AnacondaProjects\\VORONOI\\test\\*")
col_names = ['X','Y','SW','i']
df = pd.DataFrame()
for file_ in myfiles:
file_df = pd.read_csv(file_,sep=' ',names=col_names, header=None)
file__=os.path.split(file_)
file_df['file_name'] = file__[1]
df = df.append(file_df)
df.to_csv('merged.csv',index=False,header=True)
Exampe of df so far:-
X Y SW i file_name
4 3 1 1 average map for SWAT [Jan 01,2026]^URTW_L3
2 1 1 2 average map for SWAT [Jan 01,2027]^URTW_L3
使用^{} 和^{} 库:
使用
extract
将字符串括在方括号中,然后将其转换为时间戳:相关问题 更多 >
编程相关推荐