我在不同的文件夹中有年度数据文件。每个文件包含从1月1日到12月31日的每日数据。数据文件名类似于AS060419.67,其中最后四位代表年份,即1967年,0604是文件夹名。在
我试图使用下面的代码读取这些多个文件,但它只读取上一个文件夹中去年的数据def date_parser(doy, year):
return dt.datetime.strptime(doy.zfill(3)+year, ‘%j%Y’)
files = glob.glob(‘????/AS*’)
files.sort()
files
STNS = {}
for f in files:
stn_id, info = f.split(‘/’)
year = “”.join(info[-5:].split(‘.’))
print (f,stn_id)
with open(f) as fo:
data = fo.readlines()[:-1]
data = [d.strip() for d in data]
data = ‘\n’.join(data)
with open(‘data.dump’, ‘w’) as dump:
dump.write(data)
parser = lambda date: date_parser(date, year=year)
df = pd.read_table(‘data.dump’, delim_whitespace=True,names=[‘date’,’prec’],
na_values=’DNA’, parse_dates=[0], date_parser=parser, index_col=’date’ )
df.replace({‘T’: 0})
df = df.apply(pd.to_numeric, args=(‘coerce’,))
df.name = stn_name
df.sid = stn_id
if stn_id not in STNS.keys():
STNS[stn_name] = df
else:
STNS[stn_id] = STNS[stn_id].append(df)
STNS[stn_id].name = df.name
STNS[stn_id].sid = df.sid
outfile.write(line)
为了策划阴谋
^{pr2}$
问题是它只读取上一个文件夹中的去年数据。有人能帮我弄清楚吗问题。你的我们将非常感谢您的帮助。在
Original: https://blog.csdn.net/weixin_39719042/article/details/113517461
Author: weixin_39719042
Title: python读取多个文件夹_在python中如何从不同的文件夹读取多个文件
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/742313/
转载文章受原作者版权保护。转载请注明原作者出处!