R语言 从列表中提取列
在这篇文章中,我们将创建一个元素的列表,并在R中访问这些列。
方法
- 创建一个列表
语法
list_name=list(var1, var2, varn..)
- 为列表中的元素指定名称作为列名。我们可以使用names()函数来赋予名称
语法 :
names(list_name)=c(var1, var2, varn)
- 访问这些列和元素。
简单的列表
方法1:使用索引
在这个方法中,我们只需将列的索引与列表的名称一起传递,以提取该特定的列。
例子
# Create a list that can hold a vector, and a matrix
list1 <- list(c("sravan", "sudheer", "vani", "radha"),
matrix(c(98, 87, 78, 87)))
# assign names to the elements in the list.
names(list1) <- c("names", "percentage")
# access the column 1
print(list1[1])
# access the column 2
print(list1[2])
输出
方法2:使用$运算符
在这个方法中,要检索的列的名称必须与它的名称和列表的名称一起传递,用美元符号($)分开。
语法
list_name$column_name
例子
# Create a list that can hold a vector, and a matrix
list1 <- list(c("sravan", "sudheer", "vani", "radha"),
matrix(c(98, 87, 78, 87)))
# assign names to the elements in the list.
names(list1) <- c("names", "percentage")
# access the column 1
print(list1names)
# access the column 2
print(list1percentage)
输出
一个具有不同结构的列表
一个列表可以包含矩阵、向量和列表,作为列表的参数,但要访问它们,方法是一样的,下面的代码中已经讨论过了。
例子
# Create a list that can hold a vector, and a matrix and a list
list1 <- list(c("sravan", "sudheer", "vani", "radha"),
matrix(c(98, 87, 78, 87)),
list('vignan', 'vit', 'vvit', 'rvrjc'))
# assign names to the elements in the list.
names(list1) <- c("names", "percentage", "college")
print("Method 1")
# access the column 1
print(list1[1])
# access the column 2
print(list1[2])
# access the column 3
print(list1[3])
print("Method 2")
# access the column 1
print(list1names)
# access the column 2
print(list1percentage)
# access the column 3
print(list1$college)
输出
可以使用[[]]操作符访问嵌套元素。
语法
list_name[[value]][[value]]…
例子
# Create a list that can hold a vector, and a
# matrix and a list
list1 <- list(c("sravan", "sudheer", "vani", "radha"),
matrix(c(98, 87, 78, 87)),
list('vignan', 'vit', 'vvit', 'rvrjc'))
# access 2nd column first element
print(list1[[2]][[1]])
# access 2nd column
print(list1[[2]])
# access 3rd column third element
print(list1[[3]][[3]])
输出