泛饭犯然
2016-04-09 22:50
为什么将matrix形式的只设了row.names的一个矩阵,data.frame之后列名会自动变成x1,x2,x3.。。。以及在matrix,data.frame,array或者其他的内部赋一个向量给比如说name是必须用“=”是吧,
数据框跟矩阵很像,区别就是数据框可以包含不同类型的元素.因此如果一个数据框内的元素类型一样,可以被转换为矩阵;矩阵永远可以被转换为数据框。
x1,x2,x3...是当数据框名字缺失时的默认值。
#空矩阵转换为数据框的例子
> t<-matrix(nrow=2,ncol = 3)
> t
[,1] [,2] [,3]
[1,] NA NA NA
[2,] NA NA NA
> data.frame(t)
X1 X2 X3
1 NA NA NA
2 NA NA NA
#矩阵转换为数据框的例子
> df<-data.frame(id=c(1,2,3),salary=c(1.1,2.3,3.5))
> df
id salary
1 1 1.1
2 2 2.3
3 3 3.5
> data.matrix(df)
id salary
[1,] 1 1.1
[2,] 2 2.3
[3,] 3 3.5
> df
id salary
1 1 1.1
2 2 2.3
3 3 3.5
在matrix,data.frame,array或者其他的内部赋一个向量,使用=,使用<-也可以,只是name会不同。
> dd<-data.frame(id<-1:6,salary<-1:6)
> dd
id....1.6 salary....1.6
1 1 1
2 2 2
3 3 3
4 4 4
5 5 5
6 6 6
R语言基础
79670 学习 · 262 问题
相似问题