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). 标量.向量.矩阵.张量. ...
随机推荐
- pymysql 数据库编程
1.引入模块 import pymysql 2.用于建立与数据库的连接 调用pymysql模块中的connect()方法 conn = pymysql.connect(host='localhost' ...
- Lua和C++交互 学习记录之四:全局table交互
主要内容转载自:子龙山人博客(强烈建议去子龙山人博客完全学习一遍) 部分内容查阅自:<Lua 5.3 参考手册>中文版 译者 云风 制作 Kavcc vs2013+lua-5.3.3 1 ...
- AtCoder Regular Contest 102 D - All Your Paths are Different Lengths
D - All Your Paths are Different Lengths 思路: 二进制构造 首先找到最大的t,使得2^t <= l 然后我们就能构造一种方法使得正好存在 0 到 2^t ...
- canvas功能函数
封装一下常用的函数, 输入:通过一些固定的值,得到一个圆形,一个心形,一个波浪,一个涟漪,一个抛物线,一个自由弹起的过程. 返回:x,y坐标. 注意: (1)坐标轴的位置,有的在0,0有的可能不在. ...
- react点滴
1.<SubSubComp {...this.props } /> 传递属性,{...props}的方式为组件传递了这两个属性,这就是JSX中的延展属性,"..."成为 ...
- 关于ascii码的一些内容
1.通过C#程序输出tab(制表符)内容. 1.1常用方式我们可以是 //测试输出\t到文件 File.WriteAllText("test.txt", "a\tb\tc ...
- C# 读取word2003 并且显示在界面上的方法
1.新建一个windows窗体程序 2. 引入包WinWordControl.dll 3.添加引用 4.引入组件WinWordControl组件 5.主界面上加入按钮 ,opendialog, win ...
- 【转】 g++编译时对'xxxx'未定义的引用问题(undefined reference to)
转自:https://blog.csdn.net/killwho/article/details/53785910 引用:http://www.linuxdiyf.com/linux/16754.ht ...
- English trip M1 - AC6 How to make salad? Teacher:Patrick
In this lesson you will learn to give instructions. 在本课中,您将学习如何提供说明. 课上内容(Lesson) How to make a sal ...
- windows系统文件和linux系统文件
windows系统文件和linux系统文件 1.单用户操作系统和多用户操作系统 单用户操作系统:指一台计算机在同一时间 只能由一个用户 使用,一个用户独自享用系统的全部硬件和软件资源 Windows ...