- 积分
- 303
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2017-2-13
- 最后登录
- 1970-1-1
|
登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
本帖最后由 mockings 于 2018-4-28 18:53 编辑
接触python不久,之前使用的是nc数据文件,最近师兄给了青藏高原71个站点近55年的台站txt数据文件,想要读取,有参考论坛里和网上各位前辈的代码,但是一直不能正确将每列的数据分割出来保存在数组里。
目的:数据的格式是:年、月、日、平均温度、最高、最低,我想分别提取最高和最低温度储存入不同的数组当中方便调用计算
遇到的问题:1、我使用readlines的方法后,保存的格式是list,并且只是一维数组,显示的是txt文件中一整行的数据,并不能分开调用
2、使用.split(" ")针对空格分隔符,但是只是显示的方式改变,仍然是一整行的数据,只是每个数据前都多了一个字母t,并且数据间以斜杠区分开。
3、我并不明确知道txt文件内数据的行数,只知道1961-2014,其中包括闰年,我不太清楚如何存储后方便对日数据处理
主要参考的是 平流层的萝卜 的http://bbs.06climate.com/forum.p ... 6334&extra=page%3D1,主要是卡在了如何分别读取每一行的数据上,- list=os.listdir('e://data//temp')
- filename=[]
- for element in list:
- if element.find('txt')!=-1:
- filename.append(element)
- tmin=[];tmax=[]
- for name in filename:
- f=open('e://data//temp//'+name,'r')
- #print (f)
- val=[]
- content=f.readlines()
- #print (len(content)) #每个txt文件内数据量19723
- for ii in np.arange(len(content)):#开始逐行读取数据
- val.append(。。。。?)
复制代码
谢谢各位前辈帮助!
问题以解决,后来仔细看了平流层的萝卜 发的帖子,发现自己还是没有看清每一条语句的意思
- for name in filename:
- f=open('e://data//temp//'+name,'r')
- #print (f)
- val=[];t=[];tmax=[];tmin=[]
-
- content=f.readlines()
- #print (len(content)) #每个txt文件内数据量19723
- for ii in np.arange(len(content)): #开始逐行读取数据
- <b>val=content[ii].split() ############分割数据!!!!###############</b>
- #强制将数据改为float格式防止后面出错
- t.append(float(val[3]))
- tmax.append(float(val[4]))
- tmin.append(float(val[5]))
-
复制代码
|
|