R语言 把列表转换为矢量 – unlist()函数
R语言中的 unlist() 函数用于将一个列表转换为矢量。它通过保留所有组件来简化生成一个矢量。
语法: unlist(list)
参数:
list: 它是一个列表或向量
use.name: 布尔值,用于保存或不保存位置名称。
例1:将列表中的数字向量转换为一个单一的向量
# R program to illustrate
# converting list to vector
# Creating a list.
my_list <- list(l1 = c(1, 3, 5, 7),
l2 = c(1, 2, 3),
l3 = c(1, 1, 10, 5, 8, 65, 90))
# Apply unlist R function
print(unlist(my_list))
输出:
l11 l12 l13 l14 l21 l22 l23 l31 l32 l33 l34 l35 l36 l37
1 3 5 7 1 2 3 1 1 10 5 8 65 90
在上面的代码中,我们用unlist()解除了my_list的列表,并将其转换为一个单一的向量。
如上图所示,列表将被溶解,每个元素都将在同一行中,如上所示。
例2:用数据帧解列列表 。
# R program to illustrate
# Unlisting list with data frame
# Creating a list.
my_list <- list(l1 = c(1, 3, 5, 7),
l2 = c(1, 2, 3),
l3 = c(1, 1, 10, 5, 8, 65, 90))
# Create modified list
my_list_2 <- my_list
# Add a data frame to the list
my_list_2[[4]] <- data.frame(x1 = c(1, 2, 3),
x2 = c(4, 5, 6))
# Unlist list with data.frame
print(unlist(my_list_2, use.names = FALSE))
输出:
[1] 1 3 5 7 1 2 3 1 1 10 5 8 65 90 1 2 3 4 5 6
在上面的代码中,我们修改了之前的列表,在 “my_list_2 “中添加了新的元素,并对其使用了unlist()函数。
同时我们将 “use.name “参数设置为 “FALSE”,这样我们就不会看到向量中数值的位置名称。