将结果保存在R中的循环中
我正在尝试运行一个保存for循环结果的代码。每次for循环运行时,我都想将landa和dlanda的值保存在名为optimal的数据框中,其中有两列,一列用于landa,另一列用于dlanda,但我不知道如何在循环内创建名为optimal的数据框。这是我的代码:将结果保存在R中的循环中,r,loops,save,R,Loops,Save,我正在尝试运行一个保存for循环结果的代码。每次for循环运行时,我都想将landa和dlanda的值保存在名为optimal的数据框中,其中有两列,一列用于landa,另一列用于dlanda,但我不知道如何在循环内创建名为optimal的数据框。这是我的代码: Mean_Precipitation_July$mean_precip_monthYear landa <- seq(0,1,by=0.1) landa (i <- 0) (x <- 1) for(i in land
Mean_Precipitation_July$mean_precip_monthYear
landa <- seq(0,1,by=0.1)
landa
(i <- 0)
(x <- 1)
for(i in landa) {
T1 <- -(Mean_Precipitation_July$mean_precip_monthYear)^(landa)
dlanda <- (mean(T1)-median(T1))/var(T1)
optimal[x,1] <- landa
optimal[x,2] <- dlanda
i <- i + 0.1
x<- x + 1
}
月平均降水量$Mean月平均降水量
兰达这里有一个方法。我使用了一个假的测试数据集,因为OP没有发布一个
测试数据向量名为data\u vec
set.seed(2020)
data_vec <- runif(20, 2, 5)
landa <- seq(0, 1, by = 0.1)
optimal <- matrix(nrow = length(landa), ncol = 2)
optimal <- as.data.frame(optimal)
names(optimal) <- c("landa", "dlanda")
for(i in seq_along(landa)) {
T1 <- -(data_vec)^landa[i]
dlanda <- (mean(T1) - median(T1))/var(T1)
optimal$landa[i] <- landa[i]
optimal$dlanda[i] <- dlanda
}
optimal
# landa dlanda
#1 0.0 NaN
#2 0.1 7.0957224
#3 0.2 3.0064453
#4 0.3 1.6915265
#5 0.4 1.0659035
#6 0.5 0.7129269
#7 0.6 0.4939882
#8 0.7 0.3498969
#9 0.8 0.2512264
#10 0.9 0.1817638
#11 1.0 0.1318914
set.seed(2020年)
数据向量从移除iT1开始
被定义为与Mean\u deposition\u July$Mean\u precip\u monthYear
或nrow(Mean\u deposition\u July)
长度相同的向量。我想保存landa和dlanda,不保存T1。我的错误我使用了i@Sss,您需要在for循环
之前创建数据帧optimal
,然后用循环填充它。我可以试一试,如果可以添加一些数据来处理的话。