R 中 class 和 typeof 函数有什么区别?
R 中的 class 函数帮助我们了解对象类型,例如数据框的 class 输出是整数,而同一个对象的 typeof 是列表,因为数据框以列表的形式存储在内存中,但以数据框的形式表示。查看以下包含多种类型对象的示例以了解它们之间的差异。
示例 1
x1<-rpois(20,2) typeof(x1)
输出
[1] "integer"
class(x1)
[1] "integer"
df1<-data.frame(x1) df1
x1 1 1 2 4 3 1 4 0 5 2 6 2 7 4 8 2 9 3 10 4 11 1 12 4 13 0 14 5 15 2 16 2 17 0 18 4 19 3 20 3
typeof(df1)
[1] "list"
class(x1)
[1] "integer"
示例 2
M<-matrix(rnorm(40),ncol=2) M
输出
[,1] [,2] [1,] 2.02437789 -0.9161853 [2,] -0.60108978 -0.8972007 [3,] 1.27916953 0.1017923 [4,] 1.06998017 1.4839931 [5,] 0.22298522 0.6160919 [6,] -0.29346341 -0.3975116 [7,] 2.07012097 -0.7900820 [8,] 0.36719470 -0.1100298 [9,] -0.69522122 -1.9198172 [10,] 2.07822428 0.2517532 [11,] -1.56267422 1.8295022 [12,] -1.07488221 1.2666054 [13,] -0.79381494 -1.0993693 [14,] -0.16027224 -1.1814177 [15,] 0.67561791 0.7309281 [16,] -1.40912018 -0.3307749 [17,] -0.77769513 0.5527600 [18,] 0.47050704 0.1075593 [19,] -0.46616151 -0.5079660 [20,] -0.01944371 0.1553333
typeof(M)
[1] "double"
class(M)
[1] "matrix" "array"
广告