我是R.的新手。我正在使用fortran90中的基本功能,但已经迈出了一步。我正在尝试对时间序列进行计算,首先我通过读取我的输入参数进行非常基本的计算数据例如:
data <- read.table("mydata.dat",header=TRUE,sep="\t")
例如如下所示:
datetime Ttop Tbot
11/07/2013 19:16 20.61 20.5
11/07/2013 19:17 20.62 20.49
11/07/2013 19:18 20.6 20.48
11/07/2013 19:19 20.6 20.47
然后我发现顶部和底部的平均温度为Tav:
Tav <- data.frame((data$Ttop+data$Tbot)/2)
然后使用以下水的饱和压力作为Vav:
Vav <- data.frame((0.0000802*Tav^3)-(0.000717*Tav^2)+(0.0717*Tav)+0.539)
如何使用指定的标头导出此数据,例如分别将“Tav”和“Vav”附加到原始.dat文件中,以便具有相应的日期和时间?
答案 0 :(得分:2)
您现在已经创建了两个新的data.frames。我认为将新变量添加到现有data.frame:
会更实际data$Tav <- data$Ttop+data$Tbot)/2
data$Vav <- (0.0000802*Tav^3)-(0.000717*Tav^2)+(0.0717*Tav)+0.539
然后可以使用write.table
保存此data.frame:
write.table(data, file="mynewdata.dat", row.names=FALSE, sep="\t", quote=FALSE)
答案 1 :(得分:0)
试试这个:
Tav <- with(data, (Ttop + Tbot)/2)
transform(data, Tav = Tav, Vav = (0.0000802*Tav^3)-(0.000717*Tav^2)+(0.0717*Tav)+0.539)
或使用my.transform
找到here试试这个:
my.transform(data,
Tav = (Ttop + Tbot)/2),
Vav = (0.0000802*Tav^3)-(0.000717*Tav^2)+(0.0717*Tav)+0.539)
)