matlab小函数与R的比较

http://www.cnblogs.com/wentingtu/archive/2012/03/30/2425582.htmlR函数比较齐全的博客

求余

y = 5 ;  x = 2;  y%%x = 1;

matlab    mod(y,x);

R    y%%x;

取行数

matlab  size(m,1);

R    nrow(m);

重复矩阵

1 2 3 ->1 2 3 1 2 3

matlab   repmat(m,i,j)   按行重复i次,按列重复j次。如上就用repmat(m,1,2)

如果要达到 1 2 3

1 2 3的效果就用        repmat(m,2,1)

R    rep(m,2)     按列重复

合并矩阵

m1= 1 2 3 m2=4 5 6   m=1 2 3 4 5 6

横向合并

R      cbind(m1,m2);

matlab   [m1,m2];

纵向合并

R rbind(m1, m2)

MATLAB   [m1 m2];

无放回随机抽样

m,为总体。num为抽取样本的个数

matlab   randsample(m,num);   returns a k-by-1 vector y of values sampled uniformly at random, without replacement, from the integers 1 to n.

R    sample(m,num,REPLACE=FALSE);FALSE表示不放回抽样,TRUE表示放回抽样

生成特殊矩阵

R      mat.or.vec(i, j)    i行j列全为0的矩阵

MATLAB     ZEROS(i,j)

SSE = matrix(data, i, j,byrow = TRUE)          i行j列,其中的数据为data中的数据,按行排列

求向量长度

v = 1 2 3

R     length(v)=3

matlab  length(v)=3

矩阵对应元素相乘

m1=1 2 3    m2= 4 5 6   m = 4 10 18

matlab   m1.*m2;

R    m1*m2;

正常的矩阵相乘

matlab     m1*m2

R             m1%*%m2

求样本标准差

R            sd(v)

matlab    std(v)

找最小值的下标(一般是取一个向量,然后再求)

x = 5 2 1 4 10

R   which.min(x) = 3

MATLAB  find(x == min(x))

找指定元素所在的下标,并剔除

index= find(matrix == num)     index保存值为num的下标,下标为按列计算,算完一列再算第二列

index = (vector > num)       大于num的下标取1,其他的取0,一般是挑选出来,然后用于剔除

vector(index) = [];剔除index所在的元素

去除向量指定下标的值

x = 5 8 10 11 12

R     x[-1] = 8 10 11 12

matlab     x(1)=[]

取离0值最近的数

x = 1.7     y=-1.7

R          as.integer(x)   1        as.integer(y)=-1

matlab   fix(x)  fix(y)

时间: 2024-10-07 05:31:45

matlab小函数与R的比较的相关文章

Matlab中函数定义方法

Matlab自定义函数的六种方法 n1.函数文件+调用函数(命令)文件:需单独定义一个自定义函数的M文件: n2.函数文件+子函数:定义一个具有多个自定义函数的M文件: n3.Inline:无需M文件,直接定义: n4.匿名函数: n5.Syms+subs:无需M文件,直接定义: n6.字符串+subs:无需M文件,直接定义. ------------ 1.函数文件+调用函数文件:定义多个M文件 % 调用函数文件:myfile.m clear clc for t=1:10 y=mylfg(t);

matlab set函数

1.MATLAB给每种对象的每一个属性规定了一个名字,称为属性名,而属性名的取值成为属性值.例如,LineStyle是曲线对象的一个属性名,它的值决定着线型,取值可以是'-' .':'.'-.'.'--'或'none'.2.属性的操作    set函数的调用格式为:    set(句柄,属性名1,属性值1,属性名2,属性值2,…) 例子: clearx=0:0.2:12;y1=bessel(1,x);y2=bessel(2,x);y3=bessel(3,x);h=plot(x,y1,x,y2,x

PHP小函数集-篇一

一. 验证 /** * 判断用户名是否规范 */ function is_username($username) { if (preg_match("/^[a-zA-Z]{1}([0-9a-zA-Z]|[._]){3,19}$/",$username)) { return true; } } /** * 判断密码是否规范 */ function is_password($password) { if (preg_match("/^[\@A-Za-z0-9\!\#\$\%\^\

Matlab sum( ) 函数

Matlab 图像处理  Day8 1.sum( ): %  sum 函数有常用的 2 种形式 < i >. S = sum( X ); < ii >. S = sum( X,DIM ); Sample: % 由上述例子可以发现 sum( a , 1 ) = sum( a )         % 意思即为对矩阵 a 的列求和 sum( a , 2 )                          % 意思即为对矩阵 a 的行求和 % 一些特殊的小用法: sum( a(:) ):

BASH Shell 简易进度条小函数

不多说,直接上脚本. # processbar <current> <total> processbar() { local current=$1; local total=$2; local maxlen=80; local barlen=66; local perclen=14; local format="%-${barlen}s%$((maxlen-barlen))s" local perc="[$current/$total]" l

Matlab - 常用函数集锦

在使用matlab进行信号处理和图形绘制过程中,某些函数被频繁调用,所以有必要将这些常用函数进行总结归类. 滤波函数 低通滤波 function [filtered_signal,filtb,filta]=lopass_butterworth(inputsignal,cutoff_freq,Fs,order) % Low-pass Butterworth filter % [filtered_signal,filtb,filta] = lopass_butterworth(inputsignal

信号处理——MATLAB小波工具箱使用简介

作者:桂. 时间:2017-02-19  21:47:27 链接:http://www.cnblogs.com/xingshansi/articles/6417638.html 声明:转载请注明出处,谢谢. 前言 本文主要介绍MATLAB小波工具箱的使用.并以一维离散信号为例,简要分析. 一.小波分解 不同于傅里叶变换,小波分解采用小波基的方式对信号进行分解,即通过基信号的平移.伸缩等变换,将信号进行分解.下图给出小波分解的一般特性: 图中可以观察到,a8对应的小波基较大,d8~d1对应的小波基

JS_ECMA基本语法中的几种封装的小函数-2

大家好!今天继续给大家写一下ECMA中的剩下的小函数以及实用的实例: 首先先给大家说一下字符串.数组.数学方法以及json的一点小知识点: 字符串方法: str.length str.charAt(i):取字符串中的某一个; str.indexOf('e');找第一个出现的位置;找不到返回-1; str.lastIndexOf('e'):找最后一个e出现的位置;找不到返回-1; str.toUpperCase();转大写 str.toLowerCase();转小写 str.substring(起

matlab reshape函数

语法 (1)B = reshape(A,m,n) 用法: B=reshape(A,m,n) 返回m*n矩阵B,它的元素是获得A的行宽度.如果A没有m*n元素,得到一个错误结果. 例子: <span style="font-size:18px;">>> A=rand(1,10)</span> 结果: <span style="font-size:18px;">A = Columns 1 through 8 0.1622