本帖最后由 无量小蜜蜂 于 2015-9-30 09:13 编辑
各位好!新人报到,首次发帖求助。
主要有三个关于R语言的问题:
当导入ORYZA(水稻模拟模型)输出文件“res.dat"时,格式如下:
* OUTPUT TABLE NUMBER : 0 (=FIRST OUTPUT TABLE)
* OUTPUT TABLE FORMAT : TABLE OUTPUT
* Simulation results
TIME LAI WAGT WSO LAI_OBS WSO_OBS WAGT_OBS
176.000 0.10000 2.00000E-02 0.0000 - - -
177.000 0.11466 4.8328 0.0000 - - -
178.000 0.13308 10.340 0.0000 - - -
。。。(省略中间)
279.000 2.2735 13875. 7030.2 - - -
280.000 2.2428 14046. 7212.7 - - -
WARNING from ORYZA2000:
Please check your model and weather log files!
(1)代码为w<-read.table("res.dat",sep="",header=TRUE, comment.char="*")时,提示列数大于列的名字,这是什么原因?
(2)代码为w<-read.table("res.dat",sep="",header=FALSE, comment.char="*")时,提示最后一行的列数不够,这主要是被导入文件最后一行是字符且不是注释,因此无法过滤掉,请问除了预处理手动将其删除,有合适的方法用代码将其过滤掉么?
(3)代码为w<-read.table("res.dat",sep="",header=FALSE, nrows=105,comment.char="*")时,能够顺利导入数据,但是最后三列中有”-“字符,因此这三列的数据类型不是numeric,无法进行计算,如果用as.numeric函数将其强制转换,则变成1~9之间的整数,这是为什么?
R语言初学,请大家多多指教,不胜感激!
|