Matlab、R向量与矩阵操作 z
已有 1849 次阅读 2012-8-2 15:15 |系统分类:科研笔记|关键词:矩阵 480 window border center
|
|
描 述 |
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=(142536) |
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向量与矩阵操作 z的更多相关文章
- Matlab、R向量与矩阵操作
Matlab.R向量与矩阵操作 描 述 Matlab R 1 建立行向量v=[1 2 3 4] v=[1 2 3 4] v<-c(1,2,3,4)或v<-scan(),然后输入 ...
- 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》笔记:科学计算器、检查变量和工作区、向量、矩阵和数组、列表和数据框
一.第二章 科学计算器 要检查两个数字是否一样,要使用 all.equal() ,不要使用 == ,== 符号仅用于比较两个整型数是否存在相同 . > all.equal(sqrt(2)^2,2 ...
- 社交网络分析的 R 基础:(三)向量、矩阵与列表
在第二章介绍了 R 语言中的基本数据类型,本章会将其组装起来,构成特殊的数据结构,即向量.矩阵与列表.这些数据结构在社交网络分析中极其重要,本质上对图的分析,就是对邻接矩阵的分析,而矩阵又是由若干个向 ...
- R语言学习——向量,矩阵
在R中,基本的数据结构有:向量,矩阵,数组,数据框,列表,因子,函数等. 向量:一系列同类型的有序元素构成. 向量是一维结构. 向量是R最简单的数据结构,在R中没有标量. 标量被看成1个元素的向量. ...
- MATLAB矩阵操作和算术运算符
矩阵的表示 矩阵之间用空格或者是逗号间隔 矩阵可以拼接(可以用矩阵拼接) 实部矩阵和虚部矩阵构成复数矩阵,一一对应. 冒号表达式: 格式: e1:e2:e3 e1表示初始值 e2表示步长 e ...
- 学习笔记DL004:标量、向量、矩阵、张量,矩阵、向量相乘,单位矩阵、逆矩阵
线性代数,面向连续数学,非离散数学.<The Matrix Cookbook>,Petersen and Pedersen,2006.Shilov(1977). 标量.向量.矩阵.张量. ...
随机推荐
- php CLI SAPI 内置Web Server
PHP 5.4.0起, CLI SAPI 提供了一个内置的Web服务器. 这个内置的Web服务器主要用于本地开发使用,不可用于线上产品环境. URI请求会被发送到PHP所在的的工作目录(Working ...
- 力扣(LeetCode)922. 按奇偶排序数组 II
给定一个非负整数数组 A, A 中一半整数是奇数,一半整数是偶数. 对数组进行排序,以便当 A[i] 为奇数时,i 也是奇数:当 A[i] 为偶数时, i 也是偶数. 你可以返回任何满足上述条件的数组 ...
- (4)进程---daemon守护线程和join阻塞
join ()方法:主线程A中,创建了子线程B,并且在主线程A中调用了B.join(),那么,主线程A会在调用的地方等待,直到子线程B完成操作后,才可以接着往下执行,那么在调用这个线程时可以使用被调用 ...
- Getting started with Processing 第十三章——延伸(2)
与 Arduino 联动 在 Processing 中,可以通过:import processing.serial.* Serial port; //声明串口对象port = new Serial(t ...
- python 中的 and / or
逻辑运算符:and or not 优先级: not > and > or 数字:0为假, 非0为真: 字符串:空为假,非空为真: 逻辑表达式的值: x and ...
- uva11609
以三个人组队为例,3组合是:C(3,0)=1,3,3,1.还有队长的选择.有 1*0,3*1,3*2,1*3种. 组合数: 1 3 3 1 ...
- canvas绘图在手机上边缘粗糙
辛辛苦苦用canvas绘图,做好动画后,想看看效果,结果在手机上一打开,效果是有了,但是边缘特别粗糙,这怎么可以呢,有一种说法是你用canvas绘图时候在手机retain屏幕上,他把一个像素分为两个像 ...
- 用where导致group by分组字段的索引失效
把两个单独的索引合并成一个组合索引,即把where条件字段的索引和group by的分组字段索引组合成一个. 如果分组的字段需要用函数处理,可以用索引函数 Generated Column(函数索引) ...
- Dropout的理解
https://zhuanlan.zhihu.com/p/23178423 这篇知乎文章讲的比较好,在神经网络权重取平均值和减少神经元之间复杂的共适应关系两个方面分析了为什么dropout可以解决过拟 ...
- 十分钟搞定pandas内容
目录 十分钟搞定pandas 一.创建对象 二.查看数据 三.选择器 十二.导入和保存数据 参考:http://pandas.pydata.org/pandas-docs/stable/whatsne ...