这是我正在使用的代码:
import pandas as pd
import os
out = 'E:/my_projects/SWAT_Projects/NLCD2006/OriginalModels/DL_corrected2NotCopy/FutureClimate/'
devils_p = open(os.path.join(out, 'Devils_P.txt')).readlines()
FutureClimate = pd.read_csv(os.path.join(out, 'EDMA_1_rcp26_2025_1.dat'), delimiter = '\t')
headers = [' ', 'year', 'day', 'tmin', 'tmax', 'pcp']
FutureClimate.columns = headers
df = FutureClimate.drop(FutureClimate.columns[0], axis = 1)
precip = pd.Series.tolist(df.pcp)
for i in precip:
devils_p.append('%s\n' % i)
thefile = open(os.path.join(out, 'weather.txt'), 'w')
for i in devils_p:
thefile.write(i)
追加devils_p
后precip
的最终长度为33237,但是当我将其写入.txt文件时,输出长度较小:大约32400.这可能是{{{{ 1}}写得不正确?
EDIT1:如果我在追加devils_p
之前将devils_p
列表中的项目数量减少1000,那么一切正常。那么,问题可能与列表/ .txt文件的最大长度有关吗?
EDIT2:之前的编辑错误。在我将原始列表的长度减少3652个项目后,输出.txt文件仍然不正确(结束时间早于它应该)。
答案 0 :(得分:0)
所以,我不知道为什么会出现这种错误,我认为我的编写代码部分有问题,但是我使用savetxt
中的numpy
解决了我的问题:
np.savetxt(os.path.join(out, 'weather.txt'), devils_p)