我正在创建一个程序,该程序将从预格式化的文件中提取一些数据,该文件不包含时间戳,但需要一个时间戳。我知道以下几点:
当我编写代码块以提取这些数据时,我遇到了我的日期正在更新但我的小时未更新的问题。结果是我的所有数据都具有正确的日期,但同一小时。我希望这仅仅是由于睡眠剥夺而缺少一些逻辑的结果,但是如果有人可以指出我的代码存在问题,我将不胜感激。
#Paths for files to process
advpath = '/Users/stnixon/Dropbox/GradSchool/Research/EddyCovarianceData/data/palmyra2016/**'
#Create list of files to process
advfiles = glob.glob(os.path.join(advpath,'*.A16'))
#create data frames, load files, concatenate, and sort adv files and dfetfiles
advframe = []
for f in advfiles:
advdf = pd.read_csv(f, sep='\s+', names=['ID','u','v','w','u1','v1','w1','ucorr','vcorr','wcorr'], usecols=[0,1,2,3,7,8,9])
file_now = os.path.basename(f)
print(int(file_now[4:6]))
advdf['Time'] = pd.to_datetime(int(file_now[4:6]),unit='h')
advdf['Date'] = pd.to_datetime('2016'+file_now[0:2]+file_now[2:4])
advframe.append(advdf)
advdata = pd.concat(advframe)
本质上,“日期”列为我提供了正确的每一行日期,而“时间”列仅为我提供了相同的值。
答案 0 :(得分:0)
事实证明,这不是错误,而是奇怪的巧合。我需要处理的文件正确地解析了小时,但是它们是以随机顺序进行处理的,恰好碰巧前两个文件的小时数都相同。因此它看起来好像没有更新。