科学网

 找回密码
  注册
科学网 标签 480

tag 标签: 480

相关帖子

版块 作者 回复/查看 最后发表

没有相关内容

相关日志

Matlab、R向量与矩阵操作
热度 1 hhj91 2012-8-2 15:15
Matlab、R向量与矩阵操作 描 述 Matlab R 1 建立行向量 v= v= v-c(1,2,3,4) 或 v-scan() ,然后输入 1 2 3 4 ,并按 Enter 2 建立列向量 v= ’ v= 同上, R 中不区分行列 3 建立矩阵 A=$\begin{pmatrix} 12 3 \\ 45 6 \end{pmatrix}$ A= A-matrix(c(1,2,3,4,5,6), nrow=2,byrow=TRUE) 4 访问向量中元素,如第 3 个元素 v(3) v 5 访问矩阵中元素,如第二行,第三列 A(2,3) A 6 用访问向量元素的方式访问矩阵元素 A(6) ** 先数列后数行 A ** 先数列后数行 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 为底的对数等距,即在 10 a 和 10 b 之间的 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 矩阵横向连接 ( 行数要相等 ) cbind(A1,A2) 20 矩阵纵向连接 ( 列数要相等 ) rbind(A1,A2) 21 给定向量 x 和 y ,长度分别为 m 和 n ,生成 m × n 的矩阵 X ,其行为 x ;生成 m × n 的矩阵 Y ,其列为 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 # 给出的结果是向量 ; A # 结果是 n × 1 的矩阵 24 访问矩阵 A 的行,如第七行 A(7, :) A # 给出的结果是向量 ; A # 结果是 1 × m 的矩阵 25 将矩阵 A “拉直”为向量 A(:) c(A) 26 提取子矩阵,如 2-4 行, 3-6 列 A(2:4,3:6) A 27 提取特殊元素形成矩阵,如一个 3 × 2 矩阵,包含行 7,7,6 ,列 2,1 的元素 A( , ) A 28 按行掉转矩阵元素顺序 fliplr(A) t(apply(A,1,rev)) 29 按列掉转矩阵元素顺序 flipud(A) apply(A,2,rev) 30 截取向量 v ,如保留前 10 个元素 v=v(1:10) v-v 或 length(v)-10 31 截取向量 v 元素,从 a 处开始至结尾 v=v(a:end) v-v 32 截取向量 v 中除 k 以外的所有元素 v=v(1:(k-1) (K+1):end) v-v 33 截取除 k 和 j 以外的所有元素 32 中的方法 v-v 34 对矩阵 A 中的元素重新排成 n 行 m 列的新矩阵 (A 中必须有 nm 个元素 ) A=reshape(A, n, m ) dim(A)=c(n, m) 35 提取矩阵 A 的下三角矩阵 L=tril(A) L-A; L -0 36 提取矩阵 A 的上三角矩阵 U=triu(A) U-A; U -0 37 提取 n × n 的 Hilbert 矩阵 hilb(n) Hilbert(n) ** 需加载 Matrix 库 38 构建 n 维数组,如 3 × 4 × 2 reshape(1:24, 3, 4, 2) 或 reshape(1:24, ) array(1:24, c(3,2,4))
16243 次阅读|2 个评论

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-5-14 03:40

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部