爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4239|回复: 5

数值和字符读取

[复制链接]
发表于 2015-6-2 09:39:24 | 显示全部楼层 |阅读模式
Fortran
系统平台: window
问题概况: 数据中有0.526985,N/A 是用,分隔的。问一下怎么用fortran
批量读取某几列的数据。
问题截图:
我看过提问的智慧: 看过
自己思考时长(天): 1

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

密码修改失败请联系微信:mofangbao
发表于 2015-6-2 10:58:58 | 显示全部楼层
我个人的做法是先定义一个字符型变量,把这字母和数据都当作字符型变量来读取,然后再从字符型变量中把你需要的数据抽取出来。例如我的一段读取语句:read(2,*)s1,s2,s3,s4,s5,s6,s7,s8,s9,s10,s11,s12,s13,s14
                read(s1,'(a5,i5)')y1,y2
                read(s2,'(i2)')y3
                read(s3,'(i3)')y4
                read(s4,'(a3)')y5
                read(s5,'(a3)')y6
                read(s6,'(i5)')y7
                read(s7,'(i5)')y8
                read(s14,'(i6)')y9
密码修改失败请联系微信:mofangbao
发表于 2015-6-2 11:32:40 | 显示全部楼层
看你文件的样子,N/A应该是缺测值,给你个建议:
1、定义一个字符数组,大小根据你的行数,长度为列数。
2、将数据用字符数组逐行读取。
3、将数组中N/A的值替换为数值型缺测值,如-99(根据你的数据情况而设)。
4、采用内部文件的方式将数据读入数值型变量中。
针对你的问题还需要你具体的操作,比如你的文件比较小,可以直接对文件进行替换操作。个人意见,仅供参考。
密码修改失败请联系微信:mofangbao
发表于 2015-6-2 12:06:48 | 显示全部楼层
不考虑批处理的话在excel里面倒入一下,然后转为csv文件(这样逗号就可以被fortran识别为分隔符),fortran读取的时候直接用字符串读取就行。
密码修改失败请联系微信:mofangbao
 楼主| 发表于 2015-6-2 14:52:40 | 显示全部楼层
发现/ 应该是终止的意思吧,有没有办法批量修改一下?数据比较多不适合用excel。
密码修改失败请联系微信:mofangbao
发表于 2015-6-3 08:51:51 来自手机 | 显示全部楼层
在Matlab中就可以处理
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表