如何将函数结果添加到列表
How to add function result to a list
我正在尝试将函数的结果添加到一个空列表中。
我已经看到很多关于它的问题,但我不知道如何在我的代码中实现它们
a1 <- runif(10, 0, 1)
a2 <- runif(15, 0, 1)
a3 <- runif(20, 0, 1)
a4 <- runif(25, 0, 1)
a5 <- runif(30, 0, 1)
a6 <- runif(35, 0, 1)
a7 <- runif(40, 0, 1)
a8 <- runif(45, 0, 1)
a9 <- runif(50, 0, 1)
a10 <- runif(55, 0, 1)
a11 <- runif(60, 0, 1)
a12 <- runif(65, 0, 1)
dane <- list()
Estymator_sredniej <- function(która_próba, liczebnosc) {
res <- round((1/liczebnosc) * sum(która_próba), digits = 3)
cat(paste(res),sep = "\n")
new_element <- res
dane[[length(dane) + 1]] <- new_element
}
lista <- list(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12)
o <- 10
for (i in lista){
Estymator_sredniej(i, o)
o <- o + 5
}
我正在尝试将“res”添加到名为“dane”的列表中,这是一个正常的数字,例如 0.385
每次我尝试 运行 代码时,列表最终都是空的。
为了调试,我打印了 res(有效)
我试过用这个
new_element <- 5
dane[[length(dane) + 1]] <- new_element
将 5 添加到我的列表中(有效)
那么为什么我不能将 res 添加到此列表?
老实说,我没有想法
我猜你的函数 Estymator_sredniej
中需要 <<-
,例如
dane <- list()
Estymator_sredniej <- function(która_próba, liczebnosc) {
res <- round((1 / liczebnosc) * sum(która_próba), digits = 3)
dane[[length(dane) + 1]] <<- res
}
lista <- list(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12)
o <- 10
for (i in lista) {
Estymator_sredniej(i, o)
o <- o + 5
}
这样
> dane
[[1]]
[1] 0.502
[[2]]
[1] 0.482
[[3]]
[1] 0.544
[[4]]
[1] 0.498
[[5]]
[1] 0.532
[[6]]
[1] 0.473
[[7]]
[1] 0.517
[[8]]
[1] 0.499
[[9]]
[1] 0.472
[[10]]
[1] 0.462
[[11]]
[1] 0.508
[[12]]
[1] 0.484
我正在尝试将函数的结果添加到一个空列表中。 我已经看到很多关于它的问题,但我不知道如何在我的代码中实现它们
a1 <- runif(10, 0, 1)
a2 <- runif(15, 0, 1)
a3 <- runif(20, 0, 1)
a4 <- runif(25, 0, 1)
a5 <- runif(30, 0, 1)
a6 <- runif(35, 0, 1)
a7 <- runif(40, 0, 1)
a8 <- runif(45, 0, 1)
a9 <- runif(50, 0, 1)
a10 <- runif(55, 0, 1)
a11 <- runif(60, 0, 1)
a12 <- runif(65, 0, 1)
dane <- list()
Estymator_sredniej <- function(która_próba, liczebnosc) {
res <- round((1/liczebnosc) * sum(która_próba), digits = 3)
cat(paste(res),sep = "\n")
new_element <- res
dane[[length(dane) + 1]] <- new_element
}
lista <- list(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12)
o <- 10
for (i in lista){
Estymator_sredniej(i, o)
o <- o + 5
}
我正在尝试将“res”添加到名为“dane”的列表中,这是一个正常的数字,例如 0.385
每次我尝试 运行 代码时,列表最终都是空的。
为了调试,我打印了 res(有效)
我试过用这个
new_element <- 5
dane[[length(dane) + 1]] <- new_element
将 5 添加到我的列表中(有效)
那么为什么我不能将 res 添加到此列表? 老实说,我没有想法
我猜你的函数 Estymator_sredniej
中需要 <<-
,例如
dane <- list()
Estymator_sredniej <- function(która_próba, liczebnosc) {
res <- round((1 / liczebnosc) * sum(która_próba), digits = 3)
dane[[length(dane) + 1]] <<- res
}
lista <- list(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12)
o <- 10
for (i in lista) {
Estymator_sredniej(i, o)
o <- o + 5
}
这样
> dane
[[1]]
[1] 0.502
[[2]]
[1] 0.482
[[3]]
[1] 0.544
[[4]]
[1] 0.498
[[5]]
[1] 0.532
[[6]]
[1] 0.473
[[7]]
[1] 0.517
[[8]]
[1] 0.499
[[9]]
[1] 0.472
[[10]]
[1] 0.462
[[11]]
[1] 0.508
[[12]]
[1] 0.484