关于转换类型和= <--的问题

来源:2-7 R语言基础 数据框

泛饭犯然

2016-04-09 22:50

为什么将matrix形式的只设了row.names的一个矩阵,data.frame之后列名会自动变成x1,x2,x3.。。。http://img.mukewang.com/570915f30001569f02180085.jpg以及在matrix,data.frame,array或者其他的内部赋一个向量给比如说name是必须用“=”是吧,

写回答 关注

1回答

  • i2019
    2016-04-10 10:35:04
    已采纳

    数据框跟矩阵很像,区别就是数据框可以包含不同类型的元素.因此如果一个数据框内的元素类型一样,可以被转换为矩阵;矩阵永远可以被转换为数据框。

    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


    泛饭犯然

    明白了!谢谢

    2016-04-10 11:01:12

    共 1 条回复 >

R语言基础

本R语言基础教程,教你如何在R中操纵自己数据,快速入门

79670 学习 · 262 问题

查看课程

相似问题