R 函数中的双括号[[]]

R 函数中的双括号[[]],r,R,编写一个名为col_median()的函数,该函数接受一个参数df并返回列中位数的向量 col_median <- function(df) { output <- vector("double", ncol(df)) for (i in seq_along(df)) { output[[i]] <- median(df[[i]]) } output } col\u median双括号选择列表或data.frame中的单个元素(

编写一个名为col_median()的函数,该函数接受一个参数df并返回列中位数的向量

col_median <- function(df) {
    output <- vector("double", ncol(df))
    for (i in seq_along(df)) {
        output[[i]] <- median(df[[i]])
    }
    output
}

col\u median双括号选择列表或data.frame中的单个元素(因为data.frame也是列表,所以列是元素)。这里,我们将“df”的每一列的中位数分配给一个输出列表。当我们定义一个
列表
“输出”时,它应该是

col_median <- function(df) {
 output <- vector("list", ncol(df))
 for (i in seq_along(df)) {
    output[[i]] <- median(df[[i]])
   }
 output
}

col_median(df) #this returns a `list` output
通过定义

output <- vector("double", ncol(df))

@最近的邮件你说得对,但我回答的是
[
部分感谢你的详细回复。我是一个新手。如果可能,请举例说明更多,当你说,“……df[I]返回一个数据。帧和中位数对此不起作用。再次感谢。这有点难理解。再次感谢。
output <- vector("double", ncol(df))
set.seed(24)
df <- as.data.frame(matrix(sample(1:9, 10*5, replace=TRUE), ncol=5))