矩阵是元素布置成二维矩形布局的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. 如何线程调用C++类成员函数

    方法就是: 1,写成静态成员函数 2,参数为 (void* __this)用来传入类 对象指针(this) 3,进入函数首先    C类名 *_this = (C类名*)__this;  转化为对象指 ...

  2. Qt VS版本添加调试器

    Qt的VS版本默认是不带调试器的,可以去百度一个WinDbg,如下图所示. 将其中的cdb.exe添加到Qt Creator构建和运行的Debuggers标签页即可,如下图所示. http://blo ...

  3. Java基础(二) 基本类型数据类型、包装类及自动拆装箱

    我们知道基本数据类型包括byte, short, int, long, float, double, char, boolean,对应的包装类分别是Byte, Short, Integer, Long ...

  4. serverless 项目配置及创建helloworld应用(二)

    阅读目录 一:学习使用AWS Lambda来作为服务器引擎 二:使用serverless环境搭建 三:创建我们的第一个应用,hello world 服务 回到顶部 一:学习使用AWS Lambda来作 ...

  5. Docker+ Kubernetes已成为云计算的主流(二十五)

    前言 最近正在抽时间编写k8s的相关教程,很是费时,等相关内容初步完成后,再和大家分享.对于k8s,还是上云更为简单.稳定并且节省成本,因此我们需要对主流云服务的容器服务进行了解,以便更好地应用于生产 ...

  6. express 中间件的理解

    nodejs(这指express) 中间件 铺垫: 一个请求发送到服务器,要经历一个生命周期,服务端要: 监听请求-解析请求-响应请求,服务器在处理这一过程的时候,有时候就很复杂了,将这些复杂的业务拆 ...

  7. 【转】Linux下添加FTP账号和服务器、增加密码和用户,更改FTP目录

    转自:http://blog.csdn.net/cloudday/article/details/8640234   1. 启动VSFTP服务器 A:cenos下运行:yum  install  vs ...

  8. zabbix-3.2.6安装部署

    一.准备一台虚拟机并安装centos7.x版本系统 二.配置zabbix_server 1.http install: #安装各类软件支持库 yum install apr-devel apr-uti ...

  9. 【Flink】Flink 底层RPC框架分析

    1. 前言 对于Flink中各个组件(JobMaster.TaskManager.Dispatcher等),其底层RPC框架基于Akka实现,本文着重分析Flink中的Rpc框架实现机制及梳理其通信流 ...

  10. 透过字节码分析java基本类型数组的内存分配方式。

    我们知道java中new方式创建的对象都是在堆中创建的,而局部变量对应的值存放在栈上.那么java中的int [] arr={1,2,3}是存放在什么地方的呢,int []arr = new int[ ...