matlab,SAS iml 矩阵运算
发布:ziyenano | 分类:Matlab软件培训
关于本站
人大经济论坛-经管之家:分享大学、考研、论文、会计、留学、数据、经济学、金融学、管理学、统计学、博弈论、统计年鉴、行业分析包括等相关资源。
经管之家是国内活跃的在线教育咨询平台!
获取电子版《CDA一级教材》
完整电子版已上线CDA网校,累计已有10万+在读~ 教材严格按考试大纲编写,适合CDA考生备考,也适合业务及数据分析岗位的从业者提升自我。
TOP热门关键词
matlab,SASiml矩阵运算鉴于网上一直没有将二者对照分析的资料;本文旨在对照给出matlab与SASiml中一些常用的矩阵运算,并给出实例,指出二者的异同;最简单的矩阵定义,本文并未给出,大家可以查阅相关资料;有错的 ...
免费学术公开课,扫码加入![]() |
鉴于网上一直没有将二者对照分析的资料;
本文旨在对照给出matlab与SAS iml 中一些常用的矩阵运算,并给出实例,指出二者的异同;
最简单的矩阵定义,本文并未给出,大家可以查阅相关资料;
有错的地方,欢迎大家指出。
--------------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------------------
单个矩阵内部的运算:
a=[1 0 4
4 6 0]
求和:
1.matlab:
sum(a) %%%行之间相加
ans=[5 6 4]
sum(a,2) %%%列之间相加
ans=[5
10]
sum(sum(a)) %%%求总和
ans=15
2.SAS iml:
a[+,] %%%行之间相加
ans=[5 6 4]
a[,+] %%%列之间相加
ans=[5
10]
a[+] %%%求总和
ans=15
平均值:
1.matlab:
与求和函数sum相似,改成mean即可
2.SAS iml:
与求和相似,改“+”为“:”即可
内部元素相乘:
1.matlab:
与求和函数sum相似,改成prod即可
2.SAS iml:
与求和函数相似,改“+”为“#”即可
平方和运算:
1.matlab:
通过sum函数,sum(a.*2); %%%通过点乘运算先求得平方,在求和
2.SAS iml:
可以通过如上相同的思路
也可以和求和函数相似,改‘+’为'##'即可
最大值,最小值
1.matlab:
max(a) %%%最大值运算,注:为行之间元素的比较
ans=[4 6 4]
max(max(a)) %%%全体元素的最大值
ans=6
若要求列之间元素的比较,可用max(a'),转置a,再求行之间最大值,不可用max(a,2),
max(a,2)是将a中每个元素与2比较,取较大的值
min求最小值
2.SAS iml:
最大值:
与求和函数相似,改‘+’为‘<>’即可
最小值:
与求和函数相似,改‘+’为‘><’即可
逻辑运算:
1.matlab:
any(a<modify>) %%%每列中只要一个满足条件输出1,否则为0;
any(a>0)
ans=[1 1 1] 注:matlab any函数对每列做运算,要求全体元素的判断可用any(any(a>0)),
如果不加修饰条件,默认修饰条件为a=0;
即any(a) 等价于 any(a==0);
ans=[0 1 1]
all(a<modify>) %%%每列中全部符合输出条件才输出1,否则为0,用法和any相似
all(a>0)
ans=[1 0 0]
2.SAS iml:
any(a<modify>),all(a<modify>)
注:用法相似,但iml中对全体元素进行运算
any(a>0)
ans=1
all(a>0)
ans=0
查找函数:
1.matlab:
find(a<modify>) %%%查找符合修饰条件的在函数中的位置
find(a==6)
ans=4
a(find(a>2)) %%%输出a中大于2的元素
ans=[4 6]
2.SAS iml:
loc(a<modify>)
loc(a==6)
ans=5 注:iml中位置与matlab略有不同,matlab是按列数,数完一列在数另一列,而iml是按行数
a(loc(a>2))
---------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------
多个矩阵之间的运算:
a=[1 0 4 b=[0 1 5
4 6 0] 3 0 1]
+ - * 不再叙述。
除法:(矩阵运算中没有除法的)
1.matlab:
a/b等价于 a*inv(b) a乘以b的逆矩阵
此外matlab中有个左除\ a\b 等价于 b/a
2.SAS iml:
a/b与matlab中完全不同结果为a,b中对应元素相除,等价于点除,显然要求b中元素全部非0
点运算:(要求a,b矩阵大小相同,或b为常数)
1.matlab:
a.*b %%%a,b对应元素相乘
ans=[0 0 20
12 0 0]
a.\b %%%a,b对应元素相除,注意b中元素要为非0
a.^b %%%a中元素以b中对应元素的乘方
ans=[1 0 1024
6410 ]
若b为常数,则等价于a中每个元素都与b进行相应的运算
2.SAS iml:
与matlab类似:
‘#’ %%%点乘
‘/’%%%点除
‘##’ %%%点乘方
大小比较:
1.matlab
max(a,b) %%%取a,b中对应元素较大的值组成矩阵
ans=[1 1 5
4 6 1]
min(a,b) %%%取a,b中对应元素较小的值组成矩阵
ans=[0 0 4
3 00]
若b(a)为常数,则等价于a(b)中每个元素都与b比较大小
2.SAS iml:
a<>b %%%取a,b中对应元素较大的值组成矩阵
a><b %%%取a,b中对应元素较小的值组成矩阵
若b(a)为常数,则等价于a(b)中每个元素都与b比较大小
逻辑运算:
1.matlab:
a&b %%%或运算,a,b中对应元素都不为0,输出1,否则输出0
ans=[0 0 1
1 0 0]
a|b %%%与运算,a,b中对应元素只要有一个不为0,输出1,否则输出0
ans=[1 1 1
1 1 1]
~a %%%非运算,a中元素不为0,输出0,不满足,输出1
ans=[0 1 0
0 0 1]
a>b %%%a,b中对应元素满足条件,输出1,否则输出0
ans=[1 0 0
4 1 0]
'a<b' 'a=b' 'a>=b' 'a<=b'%%%同上
2.SAS iml:
与matlab相似,非运算改成^a即可
------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------------
此外matlab还有cumsum,cumprod,累加累乘等特殊功能,SAS还有 >:<, <:>找寻每行每列最大值位置等特殊功能;
这里列出的是matlab,SAS iml中最常用的运算。掌握并且灵活运用这些函数,能够大大简化程序,减少循环的使用,提高程序的效率;
上述给出的只是最基本的运用,很多时候,几个运算的组合,往往就能达到想要的效果,这就需要我们在使用的时候慢慢去琢磨,品味。
「经管之家」APP:经管人学习、答疑、交友,就上经管之家!
免流量费下载资料----在经管之家app可以下载论坛上的所有资源,并且不额外收取下载高峰期的论坛币。
涵盖所有经管领域的优秀内容----覆盖经济、管理、金融投资、计量统计、数据分析、国贸、财会等专业的学习宝库,各类资料应有尽有。
来自五湖四海的经管达人----已经有上千万的经管人来到这里,你可以找到任何学科方向、有共同话题的朋友。
经管之家(原人大经济论坛),跨越高校的围墙,带你走进经管知识的新世界。
扫描下方二维码下载并注册APP
免流量费下载资料----在经管之家app可以下载论坛上的所有资源,并且不额外收取下载高峰期的论坛币。
涵盖所有经管领域的优秀内容----覆盖经济、管理、金融投资、计量统计、数据分析、国贸、财会等专业的学习宝库,各类资料应有尽有。
来自五湖四海的经管达人----已经有上千万的经管人来到这里,你可以找到任何学科方向、有共同话题的朋友。
经管之家(原人大经济论坛),跨越高校的围墙,带你走进经管知识的新世界。
扫描下方二维码下载并注册APP
您可能感兴趣的文章
- Matlab软件 ... | [求助]matlab作满秩BEKK的程序
- Matlab软件 ... | matlab程序求助
- Matlab软件 ... | Exploratory Data Analysis with ...
- Matlab软件 ... | Mathematics for Business, Scie ...
- Matlab软件 ... | Matlab的熵权法
- Matlab软件 ... | excel link 实现Excel、Matlab数 ...
- Matlab软件 ... | Matlab: A Practical Introducti ...
- Matlab软件 ... | [求助]求高手帮忙!使用Matlab做 ...
人气文章
本文标题:matlab,SAS iml 矩阵运算
本文链接网址:https://bbs.pinggu.org/jg/ruanjianpeixun_matlabruanjianpeixun_1521404_1.html
2.转载的文章仅代表原创作者观点,与本站无关。其原创性以及文中陈述文字和内容未经本站证实,本站对该文以及其中全部或者部分内容、文字的真实性、完整性、及时性,不作出任何保证或承若;
3.如本站转载稿涉及版权等问题,请作者及时联系本站,我们会及时处理。



