如何使用 r 中的 drop 函数(附示例)
基础 R 中的drop()函数可用于从只有一层的数组或矩阵中删除维度。
以下示例展示了如何在实践中使用此功能。
示例 1:使用 drop() 删除表中具有级别的维度
假设我们在R中有以下三维数组:
#create 3-dimensional array my_array <- c(1:10) dim(my_array) <- c(1,2,5) #view array my_array , , 1 [,1] [,2] [1,] 1 2 , , 2 [,1] [,2] [1,] 3 4 , , 3 [,1] [,2] [1,] 5 6 , , 4 [,1] [,2] [1,] 7 8 , , 5 [,1] [,2] [1,] 9 10
我们可以使用drop()函数删除表中只有一级的维度:
#drop dimensions with only one level new_array <- drop(my_array) #view new array new_array [,1] [,2] [,3] [,4] [,5] [1,] 1 3 5 7 9 [2,] 2 4 6 8 10
请注意,只有一层的维度已被删除。
我们可以使用dim()函数来显示新的尺寸:
#view dimensions of new array
dim(new_array)
[1] 2 5
我们可以看到新数组只有二维。
示例 2:使用 drop() 删除矩阵中具有级别的维度
假设 R 中有以下七列一行的矩阵:
#create matrix my_matrix <- matrix(1:7, ncol=7) #view matrix my_matrix [,1] [,2] [,3] [,4] [,5] [,6] [,7] [1,] 1 2 3 4 5 6 7 #view dimensions of matrix dim(my_matrix) [1] 1 7
我们可以使用drop()函数删除矩阵中只有一层的维度:
#drop dimensions with only one level new_matrix <- drop(my_matrix) #view new matrix new_matrix [1] 1 2 3 4 5 6 7
请注意,只有一层的维度已被删除。
矩阵确实已转换为向量。
如果我们使用dim()函数来可视化维度,它将返回NULL ,因为新对象不再是二维矩阵:
#view dimensions of new matrix
dim(new_matrix)
NULL
相反,我们可以使用length()来显示向量的长度:
#view length
length(new_matrix)
[1] 7
我们可以看到我们的向量包含 7 个元素。
其他资源
以下教程解释了如何在 R 中执行其他常见任务: