搜索
查看: 2067|: 0

[资源分享] 用R做数据分析(4)——矩阵

[复制链接]

165

主题

5

回帖

1123

积分

金牌会员

积分
1123
发表于 2014-5-24 03:19:00 | 显示全部楼层 |阅读模式
矩阵的创建
        在R中用函数matrix()来创建一个矩阵,使用该函数时需要输入必要的参数值。matrix(data = NA, nrow = 1, ncol = 1, byrow = FALSE,dimnames = NULL)
        1.      data向量元素列表
        2.      nrow行数
        3.      ncol列数
        4.      byrow 矩阵是按列优先的方式进行排序, 先列后行。byrow项控制排列元素时优先级按行。例如:
        1)     matrix(c(1,2,3,4,5,6),nrow=2,byrow=T)
        5.      Dimnames(Row_name,Col_name)给定行和列的名称,如果不需要给行或者列命名,则以NULL代替。例如:给下面的矩阵列命令
        2)     Demo_1<-matrix(rnorm(15)*10,5,3,dimnames=list(NULL,c('A','B','C')))
        矩阵的运算
        1、R矩阵查看矩阵的列/行相关信息
        #查看矩阵列名
        colnames(Demo_1)
        #查看矩阵行名
        rownames(Demo_1)
        #给矩阵的行命名
        rownames(Demo_1)<-c('r1','r2','r3','r4','r5')
        #矩阵的维度
        dim(Demo_1)
        #返回与矩阵相同的列与行
        row()/col()函数将返回一个与某矩阵有相同维数的矩阵
        #返回矩阵行数与列数
        nrow()返回行数
        ncol()返回列数
        2、R的子矩阵
        #取矩阵中某个元素值,第二行第三列的值:
        Demo_1[2,3]
        #取矩阵中的某列,取矩阵的第一列
        Demo_1[,1]
        #取矩阵中的某行,取矩阵的第一行
        Demo_1[1,]
        #取某列大于某个值,取第二列大于3
        Demo_1[Demo_1[,2]>3,]

        
        3、R矩阵的基本运算
        #矩阵加&减
        Demo_2=Demo_3=matrix(1:20,nrow=5,ncol=4)

        
        #矩阵相乘
        Demo_4= matrix(1:20,nrow=4,ncol=5)
        Demo_5=matrix(1:20,nrow=5,ncol=4)
        Demo_4%*%Demo_5

        
        4、增加行与列
        Demo_6<- matrix(,4,2)
        Demo_6[c(1,3),] <- matrix(c(1,2,3,4))
        Demo_6

        
        5、R矩阵的转置
        t(Demo_1)

        
        6、矩阵其它运算
        #取对角元素
           diag()
        #各行汇总值
        rowSums()
        #各行的平均值
        rowMeans()
        #各位的汇总值
        colSums()
        #各列的平均值
        colMeans()

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

大数据中国微信

QQ   

版权所有: Discuz! © 2001-2013 大数据.

GMT+8, 2024-12-22 02:13 , Processed in 0.071750 second(s), 25 queries .

快速回复 返回顶部 返回列表