Matlab、R向量与矩阵操作
|
描 述 |
Matlab |
R |
1 |
建立行向量v=[1 2 3 4] |
v=[1 2 3 4] |
v<-c(1,2,3,4)或v<-scan(),然后输入1 2 3 4,并按Enter |
2 |
建立列向量v=[1 2 3 4]’ |
v=[1;2;3;4] |
同上,R中不区分行列 |
3 |
建立矩阵A=(1 4 2 5 3 6 ) |
A=[1 2 3;4 5 6] |
A<-matrix(c(1,2,3,4,5,6), nrow=2,byrow=TRUE) |
4 |
访问向量中元素,如第3个元素 |
v(3) |
v[3] |
5 |
访问矩阵中元素,如第二行,第三列 |
A(2,3) |
A[2,3] |
6 |
用访问向量元素的方式访问矩阵元素 |
A(6) **先数列后数行 |
A[6] **先数列后数行 |
7 |
生成等差递增序列(单位步长),如2,3,4,5,6,7 |
2:7 |
2:7 |
8 |
生成等差递减序列(单位步长),如7,6,5,4,3,2 |
7:-1:2 |
7:2 |
9 |
生成等差递增序列, 如2,5,8,11,14 |
2:3:14 |
seq(2,14,3) |
10 |
7-9归纳起来,介于a和b之间,等差的n个数,可用函数 |
linspace(a,b,n) |
seq(a,b,len=n) |
11 |
构建以10为底的对数等距,即在10a和10b之间的n个数 |
logspace(a,b,n) |
10^seq(a,b,len=n) |
12 |
构建所有元素都为0的k维向量 |
zeros(k,1)列向量 zeros(1,k)行向量 |
rep(0,k) |
13 |
构建所有元素都为j的k维向量 |
j*ones(k,1) 列向量 j*ones(1,k) 列向量 |
rep(j,k) |
14 |
构建所有元素都为0的n×m矩阵 |
zeros(n,m) |
matrix(0, nrow=n,ncol=m) 或matrix(0 ,n, m) |
15 |
构建所有元素都为j的n×m矩阵 |
j*ones(n,m) |
matrix(j, nrow=n, ncol=m) 或matrix(j, n, m) |
16 |
n×n的单位矩阵 |
eye(n) |
diag(n) |
17 |
构建对角阵,使其对角线上的元素为向量v |
diag(v) |
diag(v, nrow=length(v)) |
18 |
提取矩阵A对角线元素 |
v=diag(A) |
v<-diag(A) |
19 |
矩阵横向连接(行数要相等) |
[A1 A2] |
cbind(A1,A2) |
20 |
矩阵纵向连接(列数要相等) |
[A1;A2] |
rbind(A1,A2) |
21 |
给定向量x和y,长度分别为m和n,生成m×n的矩阵X,其行为x;生成m×n的矩阵Y,其列为y; |
[X,Y]=meshgrid(x, y) |
m<-length(x); n=length(y); X<-matrix(rep(x,each=n),nrow=n); Y<-matrix(rep(y,m),nrow=n) |
22 |
向量元素掉转顺序 |
v(end:-1:1) |
rev(v) |
23 |
访问矩阵A的列,如第二列 |
A(:, 2) |
A[,2]#给出的结果是向量; A[,2,drop=FALSE]#结果是n×1的矩阵 |
24 |
访问矩阵A的行,如第七行 |
A(7, :) |
A[7, ]#给出的结果是向量; A[7, ,drop=FALSE]#结果是1×m的矩阵 |
25 |
将矩阵A“拉直”为向量 |
A(:) |
c(A) |
26 |
提取子矩阵,如2-4行,3-6列 |
A(2:4,3:6) |
A[2:4,3:6] |
27 |
提取特殊元素形成矩阵,如一个3×2矩阵,包含行7,7,6,列2,1的元素 |
A([7 7 6],[2 1]) |
A[c(7,7,6),c(2,1)] |
28 |
按行掉转矩阵元素顺序 |
fliplr(A) |
t(apply(A,1,rev)) |
29 |
按列掉转矩阵元素顺序 |
flipud(A) |
apply(A,2,rev) |
30 |
截取向量v,如保留前10个元素 |
v=v(1:10) |
v<-v[1:10]或 length(v)<-10 |
31 |
截取向量v元素,从a处开始至结尾 |
v=v(a:end) |
v<-v[a:length(v)] |
32 |
截取向量v中除k以外的所有元素 |
v=v(1:(k-1) (K+1):end) |
v<-v[-k] |
33 |
截取除k和j以外的所有元素 |
32中的方法 |
v<-v[c(-k, -j)] |
34 |
对矩阵A中的元素重新排成n行m列的新矩阵(A中必须有nm个元素) |
A=reshape(A, n, m ) |
dim(A)=c(n, m) |
35 |
提取矩阵A的下三角矩阵 |
L=tril(A) |
L<-A; L[upper.tri(A)]<-0 |
36 |
提取矩阵A的上三角矩阵 |
U=triu(A) |
U<-A; U[lower.tri(A)]<-0 |
37 |
提取n×n的Hilbert矩阵 |
hilb(n) |
Hilbert(n) **需加载Matrix库 |
38 |
构建n维数组,如3×4×2 |
reshape(1:24, 3, 4, 2)或 reshape(1:24, [3 4 2]) |
array(1:24, c(3,2,4)) |
Matlab、R向量与矩阵操作的更多相关文章
- Matlab、R向量与矩阵操作 z
已有 1849 次阅读 2012-8-2 15:15 |系统分类:科研笔记|关键词:矩阵 480 window border center Matlab.R向量与矩阵操作 描 述 Matla ...
- MATLAB 的向量,矩阵和阵列命令
MATLAB 的向量,矩阵和阵列命令:
- MATLAB命令大全和矩阵操作大全
转载自: http://blog.csdn.net/dengjianqiang2011/article/details/8753807 MATLAB矩阵操作大全 一.矩阵的表示在MATLAB中创建矩阵 ...
- MATLAB矩阵操作大全
转载自:http://blog.csdn.net/dengjianqiang2011/article/details/8753807 MATLAB矩阵操作大全 一.矩阵的表示 在MATLAB中创建矩阵 ...
- R语言学习——向量,矩阵
在R中,基本的数据结构有:向量,矩阵,数组,数据框,列表,因子,函数等. 向量:一系列同类型的有序元素构成. 向量是一维结构. 向量是R最简单的数据结构,在R中没有标量. 标量被看成1个元素的向量. ...
- 《学习R》笔记:科学计算器、检查变量和工作区、向量、矩阵和数组、列表和数据框
一.第二章 科学计算器 要检查两个数字是否一样,要使用 all.equal() ,不要使用 == ,== 符号仅用于比较两个整型数是否存在相同 . > all.equal(sqrt(2)^2,2 ...
- 社交网络分析的 R 基础:(三)向量、矩阵与列表
在第二章介绍了 R 语言中的基本数据类型,本章会将其组装起来,构成特殊的数据结构,即向量.矩阵与列表.这些数据结构在社交网络分析中极其重要,本质上对图的分析,就是对邻接矩阵的分析,而矩阵又是由若干个向 ...
- MATLAB矩阵操作和算术运算符
矩阵的表示 矩阵之间用空格或者是逗号间隔 矩阵可以拼接(可以用矩阵拼接) 实部矩阵和虚部矩阵构成复数矩阵,一一对应. 冒号表达式: 格式: e1:e2:e3 e1表示初始值 e2表示步长 e ...
- 学习笔记DL004:标量、向量、矩阵、张量,矩阵、向量相乘,单位矩阵、逆矩阵
线性代数,面向连续数学,非离散数学.<The Matrix Cookbook>,Petersen and Pedersen,2006.Shilov(1977). 标量.向量.矩阵.张量. ...
随机推荐
- Nmap——主机、端口扫描工具
nmap 其基本功能有三个,一是探测一组主机是否在线:其次是扫描主机端口,嗅探所提供的网络服务:还可以推断主机所用的操作系统 . 这是百度给的介绍:http://baike.baidu.com/lin ...
- (8)python 类和对象
一.类和对象 python可以动态的添加删除变量和方法 类中的方法至少要有一个参数,第一个参数会被绑定到类的实例上,通常命名为self 1.构造函数 类中的构造方法名为 __init__(self,. ...
- (3)java运行
java文件后后缀名为 .java 一个java文件的运行需要分为两个阶段,编译阶段和运行阶段 编译阶段 检查java源代码的语法是否错误 生成对应平台的.class文件 例如 :有个A.java的文 ...
- Java学习之路(书籍推荐)
一.基础类 1.<Thinking in java>(阅读2遍),入门第一位是建立正确的概念 2.<Core Java>这本书更贴近实践,更多API的介绍,同样,更新也更频繁. ...
- Problem B: 英雄无敌3(2)【模拟,日期转换】
Problem B: 英雄无敌3(2) Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 295 Solved: 52[Submit][Status][W ...
- RPD Volume 168 Issue 4 March 2016 评论7-end
Shielding activation of petawatt laser facilities in Romania: a FLUKA preliminary evaluation Abstr ...
- 【2-SAT】URAL - 2089 - Experienced coach
题意:给出n对点a,b 要求从没对点中选出一个,且最终选出的点n个数不能存在相同的.输入数据满足每种数最多出现3次,最少出现1次 思路:第i对点的编号2*i, 2*i+1, 因为每个数最多出现3 ...
- 【DFS】URAL - 2104 - Game with a Strip
大概就是dfs?当前区间(l,r)的答案可以由(l,m)和(m+1,r)区间推出,如果某个区间已经完全被某种颜色覆盖,那么就返回该颜色.否则按照递归层数判定,奇数层Alice占优势,只需左右区间中一者 ...
- 【dfs序】【set】bzoj3991 [Sdoi2015]寻宝游戏
在考试代码的基础上稍微改改就a了……当时为什么不稍微多想想…… 插入/删除一个新节点时就把其dfn插入set/从set中删除. 当前的答案就是dfn上相邻的两两节点的距离和,再加上首尾节点的距离. 比 ...
- 【并查集】bzoj1015 [JSOI2008]星球大战starwar
倒着处理删点,就变成了加点,于是并查集. #include<cstdio> using namespace std; #define N 400001 int fa[N],kill[N], ...