- 积分
- 153
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2014-11-6
- 最后登录
- 1970-1-1
|
登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
先说明我要处理成什么样的数据:一是我有几十年的逐日站点数据,是按月存储的,一个月的文件里有800多个站点的逐日数据。我想删掉一些站点,并处理成以站点为单位的数据。
1.txt是就是我处理完的718站点号的文件。fils = systemfunc ("ls "+ diri + "SURF_CLI_CHN_MUL_DAY-TEM-12001-*.TXT")这个读取的就是逐日站点数据。格式是50136 5329 12221 102796 1961 1 1 -317 -295 -397 0 0 0。
begin
fname = "1.txt"
lines = asciiread(fname,-1,"float")
diri = "/mnt/lustre/hanzq/ss/TEM/"
fils = systemfunc ("ls "+ diri + "SURF_CLI_CHN_MUL_DAY-TEM-12001-*.TXT")
d = dimsizes(fils)
do i = 0 , d-1
data := asciiread(fils(i),-1,"float")
end do
do a = 0 , 717
if (data .eq. (/lines(a)/)) then
data@_FillValue = 9.96921e+36
write_matrix (data, "13f12.1" , False)
end if
end do
end
我把站点号文件和逐日站点数据都按浮点型数据读出来以后,我想做一个站点号这个文件的循环,然后判定逐日站点数据如果是有和站点号相等的话就输出一个文件,这样就能处理成以站点问单位的数据。这只是一个想法,请大家指教可不可行.这个程序还没写完,只是一个想法。
这个程序运行的时候出现
atal:Conditional statements (if and do while) require SCALAR logical values, see all and any functions
fatal:["Execute.c":8567]:Execute: Error occurred at or near line 19 in file 45.ncl
这样的错误提示,应该是说都应该是数值来进行比较,所以请大家指点一下,data和(/lines(a)/)应该都是浮点数据,不包括属性了,到底是哪里错了呢?
|
|