R提供了两种不同的方法来访问列表或data.frame- []和[[]]运算符的元素.
两者有什么区别?在什么情况下我应该使用一个而不是另一个?
我创建了一个名为 df 的数据框并为其指定了列名。然后我创建一个名为 test_list 的新列表。我遍历数据帧(df)并按顺序对它们进行排序。
现在,如何仅打印或提取列表中的前 5 个元素(test_fun)?
df<- data.frame(45,67,78,89,45,65,54,67,87)
colnames(df) <- c("A","B","C","D","E","F","G","H","I")
test_list <- list()
for(i in 1:nrow(df))
{
test_list[[i]] <- colnames(sort(df[i,c(1:9)], decreasing = TRUE))
}
Run Code Online (Sandbox Code Playgroud)
我试过,
test_list[[1]]
#gives output
#[1] "D" "I" "C" "B" "H" "F" "G" "A" "E"
test_list[c(1,2,3,4,5)]
#gives output
#[[1]]
#[1] "D" "I" "C" "B" "H" "F" "G" "A" "E"
#[[2]]
#NULL
#[[3]]
#NULL
#[[4]]
#NULL
#[[5]]
#NULL
Run Code Online (Sandbox Code Playgroud)
但是我需要
#output as
#D
#I
#C
#B
#H
Run Code Online (Sandbox Code Playgroud)