矩阵分块及其运算
来源:互联网 发布:c语言俄罗斯方块 编辑:程序博客网 时间:2024/06/05 11:30
mat2cell函数就是将矩阵转化成胞元数组(cell array),用数学的语言讲就是矩阵分块。其意义和用法可以用matlab的帮助文档说清楚:
而cellfun函数就是对每一个块做相同的操作,例如求和、求均值等等,用这个函数就避免了写for循环了,也算是matlab向量化运算的一个例子。下面用一个例子说明之。
- 1
- 2
- 3
- 4
- 5
- 6
- 1
- 2
- 3
- 4
- 5
- 6
matrix
mc
mc{1,1} =
18 10 9 3 13 3236 3 29
mc{2,1} =
50 31 38 9 39 8 6 26 1846 2 825 50 43
mc{3,1} =
43 26 1741 17 14
mc{1,2} =
1 3041 4125 50
mc{2,2} =
27 4544 1137 234 23 9 1
mc{3,2} =
28 2448 48
对每个分块进行运算,利用cellfun函数。
例2:求上述各个分块的平均值。
>> C=cellfun(@mean,cellfun(@mean,B,'UniformOutput',false))
C =
3 5
9 11
注意最里面的mean是求各块列平均,需要再平均一次才得到每一分块的总平均。应为最里面的mean运算后得到的是cell矩阵,所以false掉‘UniformOutput’参数。外面的一个mean运算得到的是数组,就不需要这样做了(默认的是不false)
例3:求上述各分块的总和。
>> D=cellfun(@sum,cellfun(@sum,B,'UniformOutput',false))
D =
12 20
36 44
这个例子展示了cell型矩阵的运算并不需要用新的函数,只是需要将对应的矩阵运算符与cellfun函数结合即可。
0 0
- 矩阵分块及其运算
- 线性代数:第二章 矩阵及其运算:逆矩阵、分块矩阵
- 矩阵及其运算
- 线性代数 矩阵及其运算
- 矩阵及其运算
- MATLAB矩阵及其运算
- 矩阵及其基本运算
- 分块矩阵的加法和乘法运算
- 【线性代数】分块矩阵的运算、特征值
- 矩阵运算中选择分块矩阵策略的研究
- MATLAB 02-矩阵及其运算
- MATLAB中矩阵及其运算
- 卷积矩阵及其运算实例
- 矩阵的运算及其运算规则
- 矩阵的运算及其运算规则
- 线性代数学习笔记二:矩阵及其运算
- numpy教程:矩阵matrix及其运算
- 线性代数-【2-1】矩阵及其运算
- Hibernate_使用clone解决hibernate延迟加载问题及分析
- Js_join&split
- [机房练习赛4.6] mulfunc 线性筛
- SpringBoot +shiro+mybatis plus+spring +redis
- Hibernate_根据条件动态组装sql/hql语句(仿ibatis动态查询语句功能)
- 矩阵分块及其运算
- 51testing 测试方面文章
- Mysql_数据库实时备份_linux
- Java_获取变量的类型
- Java 实现随机验证码
- Hibernate_a different object with the same identifier value was already associat
- Hibernate_org.hibernate.hql.ast.QuerySyntaxException: Path expected for join
- Delete and Update
- 进程&线程