矩阵是元素布置成二维矩形布局的R对象。 它们包含相同原子类型的元素。

R创建矩阵的语法:

matrix(data, nrow, ncol, byrow, dimnames)

参数说明:

  • data - 成为矩阵的数据元素输入向量。
  • nrow - 是要创建的行数。
  • ncol -  要被创建的列数。
  • byrow - 是一个合乎逻辑。若为True,则输入向量元素按行安排。
  • dimnames - 是分配给行和列名称。

Example

> # Elements are arranged sequentially by row.
> M <- matrix(c(:), nrow=, byrow=TRUE)
> print(M)
[,] [,] [,]
[,]
[,]
[,]
[,]
> # Elements are arranged sequentially by column.
> N <- matrix(c(:), nrow=, byrow=FALSE)
> print(N)
[,] [,] [,]
[,]
[,]
[,]
[,]
> # Define the column and row names.
> rownames = c("row1", "row2", "row3", "row4")
> colnames = c("col1", "col2", "col3")
> P <- matrix(c(:), nrow=, byrow=TRUE, dimnames=list(rownames, colnames))
> print(P)
col1 col2 col3
row1
row2
row3
row4

访问矩阵:

> # Access the element at 3rd column and 1st row.
> print(P[,])
[]
> # Access the element at 2nd column and 4th row.
> print(P[,])
[]
> # Access only the 2nd row.
> print(P[,])
col1 col2 col3 > # Access only the 3rd column.
> print(P[,])
row1 row2 row3 row4

矩阵计算:

> # Create two 2x3 matrices.
> matrix1 <- matrix(c(, , -, , , ), nrow=)
> print(matrix1)
[,] [,] [,]
[,] -
[,]
> matrix2 <- matrix(c(, , , , , ), nrow=)
> print(matrix2)
[,] [,] [,]
[,]
[,]
> # Add the matrices.
> result <- matrix1 + matrix2
> cat("Result of addition","n")
Result of addition n
> print(result)
[,] [,] [,]
[,] -
[,]
> # Subtract the matrices
> result <- matrix1 - matrix2
> cat("Result of subtraction","n")
Result of subtraction n
> print(result)
[,] [,] [,]
[,] - - -
[,] -
> # Multiply the matrices.
> result <- matrix1 * matrix2
> cat("Result of multiplication","n")
Result of multiplication n
> print(result)
[,] [,] [,]
[,]
[,]
> # Divide the matrices
> result <- matrix1 / matrix2
> cat("Result of division","n")
Result of division n
> print(result)
[,] [,] [,]
[,] 0.6 -Inf 0.6666667
[,] 4.5 0.4444444 1.5000000

参考网址:http://www.phperz.com/special/109.html

R语言矩阵的更多相关文章

  1. R语言矩阵matrix函数

    矩阵是元素布置成二维矩形布局的R对象. 它们包含相同原子类型的元素.尽管我们可以创建只包含字符或只逻辑值的矩阵,但是它们没有多大用处.我们使用的是在数学计算中含有数字元素矩阵. 使用 matrix() ...

  2. R语言矩阵维度“消失”的问题

    矩阵(matrix)是R语言中很基础的一种数据结构,也是R语言使用者经常使用的一种数据结构.矩阵的维度一般为二维(m*n). R语言中矩阵的操作是非常简单易懂的,但是在对R语言做矩阵操作时,有个地方需 ...

  3. R语言矩阵相关性计算及其可视化?

    目录 1. 矩阵相关性计算方法 base::cor/cor.test psych::corr.test Hmisc::rcorr 其他工具 2. 相关性矩阵转化为两两相关 3. 可视化 corrplo ...

  4. R语言矩阵栅格显示矩阵颜色显示

    效果如下:

  5. R语言基础:数组&列表&向量&矩阵&因子&数据框

    R语言基础:数组和列表 数组(array) 一维数据是向量,二维数据是矩阵,数组是向量和矩阵的直接推广,是由三维或三维以上的数据构成的. 数组函数是array(),语法是:array(dadta, d ...

  6. R语言编程艺术# 矩阵(matrix)和数组(array)

    矩阵(matrix)是一种特殊的向量,包含两个附加的属性:行数和列数.所以矩阵也是和向量一样,有模式(数据类型)的概念.(但反过来,向量却不能看作是只有一列或一行的矩阵. 数组(array)是R里更一 ...

  7. R语言笔记1--向量、数组、矩阵、数据框、列表

    注释:R语言是区分大小写的 1.向量 R语言中可以将各种向量赋值为一个变量,这种赋值操作符就是等号“=”,也可以使用“<-”. 1)产生向量 (1)函数c() 例如:x1=c(2,4,6,8,0 ...

  8. R语言编程艺术#02#矩阵(matrix)和数组(array)

    矩阵(matrix)是一种特殊的向量,包含两个附加的属性:行数和列数.所以矩阵也是和向量一样,有模式(数据类型)的概念.(但反过来,向量却不能看作是只有一列或一行的矩阵. 数组(array)是R里更一 ...

  9. 使用R语言-为矩阵(表格)的行列命名

    转自:http://www.dataguru.cn/article-2217-1.html R语言中经常进行矩阵(表格)数据的处理,在纷繁复杂的数据中,为其行列定义一个名字变得尤为重要.在处理巨量数据 ...

随机推荐

  1. .NET MVC 在action中,过滤器中,或视图中,如何分别获取 当前请求的 控制器/视图/区域 的名字

    1)过滤器中的: public class CMSAttribute : FilterAttribute, IAuthorizationFilter { public void OnAuthoriza ...

  2. PowerDesigner逆向工程导入MYSQL数据库总结(不容易,感谢前者们)

    原文:PowerDesigner逆向工程导入MYSQL数据库总结(不容易,感谢前者们) 参考来源: http://blog.csdn.net/chamtianjiao/article/details/ ...

  3. 可以用GetObjectProp来获取对象的属性

    原来可以用GetObjectProp来获取对象的属性,还有这用法,哈哈哈哈…… var SL: TStrings; UseDBTools: Boolean;begin SL := nil; if Me ...

  4. GNU自动化工具使用全过程详解,以及在线手册

    [root@localhost test3]# cat add.h#ifndef _ADD_H_#define _ADD_H_ extern int add(int, int); #endif [ro ...

  5. QAbstractItemView为截断的项显示ToolTip(使用事件过滤)

    在Qt中想要为QAbstractItemView中长度不够而使得内容被截断的项显示ToolTip,Qt官网有一篇文章介绍使用事件过滤器来显示太长的项,但是没有涵盖图标的情况.显示列头项太长的情况等等, ...

  6. 以太网,IP,TCP,UDP数据包分析(此文言简意赅,一遍看不懂的话,耐心的看个10遍就懂了,感谢作者无私奉献)

    1.ISO开放系统有以下几层: 7 应用层 6 表示层 5 会话层 4 传输层 3 网络层 2 数据链路层 1 物理层 2.TCP/IP 网络协议栈分为应用层(Application).传输层(Tra ...

  7. django自带的cache

    cache语法 from django.core.cache import cache #存入内存 cache.set("aaa",123) #从内存中获取 cache.get(& ...

  8. request的跳转

    使用request.getRequestDispather(url).forword(request,response)方法跳转页面 地址栏的路径不会发生改变,在后续的ajax调用 使用window. ...

  9. centos7PXE和cobbler自动部署装机

    安装程序启动过程MBR:isolinux/boot.catstage2: isolinux/isolinux.bin配置文件:isolinux/isolinux.cfg 每个对应的菜单选项: 加 ...

  10. Kafka —— 基于 ZooKeeper 搭建 Kafka 高可用集群

    一.Zookeeper集群搭建 为保证集群高可用,Zookeeper集群的节点数最好是奇数,最少有三个节点,所以这里搭建一个三个节点的集群. 1.1 下载 & 解压 下载对应版本Zookeep ...