关于列数据转变成矩阵行列式计算方法

excel中矩阵转换程序:怎么把矩阵变成列向量,或者把列向量变成矩阵?
excel中矩阵转换程序:怎么把矩阵变成列向量,或者把列向量变成矩阵?
08-12-24 &
把这个2个自定义函数放入模块 Function Change(Rng As Range) Dim A(), Rg As Range Dim I As Integer ReDim A(1 To Rng.Areas(1).Cells.Count) For Each Rg In Rng.Areas(1).Cells I = I + 1 A(I) = Rg.Value Next Change = Application.WorksheetFunction.Transpose(A) End Function '************************************************* Function Change2(Rng As Range, R As Integer, C As Integer) Dim A() Dim I As Integer, J As Integer, K As Integer ReDim A(1 To R, 1 To C) For I = 1 To R For J = 1 To C K = K + 1 A(I, J) = Rng.Columns(1).Cells(K) Next Next Change2 = A End Function A1:C4的数字是: 1 2 3 4 5 6 7 8 9 10 11 12 选中E1:E12,填入公式: =change(A1:C4) ctrl+shift+enter 得到结果: 1 2 3 4 5 6 7 8 9 10 11 12 选中F1:G2,输入公式: =change2(A1:A4,2,2) ctrl+shift+enter 返回一个2行X2列的矩阵: 1 4 7 10
请登录后再发表评论!
Function Change(Rng As Range) Dim A(), Rg As Range Dim I As Integer ReDim A(1 To Rng.Areas(1).Cells.Count) For Each Rg In Rng.Areas(1).Cells I = I + 1 A(I) = Rg.Value Next Change = Application.WorksheetFunction.Transpose(A) End Function '************************************************* Function Change2(Rng As Range, R As Integer, C As Integer) Dim A() Dim I As Integer, J As Integer, K As Integer ReDim A(1 To R, 1 To C) For I = 1 To R For J = 1 To C K = K + 1 A(I, J) = Rng.Columns(1).Cells(K) Next Next Change2 = A End Function
请登录后再发表评论!查看: 9537|回复: 14
请教大家如何将行数据变为矩阵呢?
阅读权限20
在线时间 小时
现有这样的一个表格,是各个城市直接的距离,带有方向性,想把它对应填入右侧矩阵,即矩阵的列对应A列,矩阵的行对应B列。将距离值填入矩阵。我查阅了excel应用大全,可没有找到对应的例子。
QQ截图22.jpg (30.98 KB, 下载次数: 128)
21:49 上传
真心觉得excel函数,入门简单,用比较复杂的函数就晕乎了。这点小问题折腾一下午了。投降了,呵呵。只好麻烦大家了!谢谢各位!
(7.33 KB, 下载次数: 42)
21:53 上传
点击文件名下载附件
阅读权限100
在线时间 小时
=SUMPRODUCT(($G2&H$1=$A$2:$A$7&$B$2:$B$7)*($C$2:$C$7))复制代码
阅读权限70
在线时间 小时
H2=SUMIFS($C:$C,$A:$A,$G2,$B:$B,H$1)
下拉,右拉
(不要在数据源表格中随意输入多余的空格符号)
阅读权限70
在线时间 小时
数据透视表也可
22:24 上传
点击文件名下载附件
10.52 KB, 下载次数: 74
阅读权限70
在线时间 小时
& & & & & & & &
=IF($G3=H$1,0,INDEX($C$2:$C$7,MATCH($G3&H$1,$A$2:$A$7&$B$2:$B$7,)))
阅读权限20
在线时间 小时
非常感谢大家!呵呵
阅读权限20
在线时间 小时
& & & & & & & &
DZ潇潇 发表于
H2=SUMIFS($C:$C,$A:$A,$G2,$B:$B,H$1)
下拉,右拉
(不要在数据源表格中随意输入多余的空格符号)
老兄,用你的公式,有一个格是错的呢。黄色的。
QQ截图54.jpg (35.06 KB, 下载次数: 133)
14:44 上传
阅读权限20
在线时间 小时
zhouzhongchi 发表于
=IF($G3=H$1,0,INDEX($C$2:$C$7,MATCH($G3&H$1,$A$2:$A$7&$B$2:$B$7,)))
老兄,这个公式提示有错误呢,不知是什么原因,没看出来。
QQ截图33.jpg (100.57 KB, 下载次数: 106)
14:48 上传
阅读权限20
在线时间 小时
zhouzhongchi 发表于
数据透视表也可
老兄的方法确实可以做出来,不过我还得消化一下,呵呵。谢谢!
阅读权限20
在线时间 小时
看见星光 发表于
老兄,不好意思,我试了一下,红色的单元格,天津至北京显示为0呢。
QQ截图54.jpg (39.07 KB, 下载次数: 143)
14:59 上传
最新热点 /1
本活动是由微软(中国)有限公司发起,申请通过者可以得到Office 365企业级E3 试用账号,并享有全套Office 365客户端及云端高效、协作办公体验。 机会有限,先到先得!
玩命加载中,请稍候
玩命加载中,请稍候
Powered by
本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任! & & 本站特聘法律顾问:徐怀玉律师 李志群律师扫一扫,访问微社区
只需一步,快速开始
请完成以下验证码
请完成以下验证码
查看: 7662|回复: 5|关注: 0
如何将一组数据(向量)按照顺序变成N行M列(nXm)矩阵
<h1 style="color:# 麦片财富积分
新手, 积分 5, 距离下一级还需 45 积分
请教老师和高手,如果获得一组输入数据(即:一组向量,例如共200个数据),希望将它们按照顺序排列成5行40列(5X40)的矩阵,应当用何语句或程序实现。谢谢帮助!
MATLAB 基础讨论版块优秀回答者
<h1 style="color:#5 麦片财富积分
关注者: 3
reshape(a,5,40)
<h1 style="color:# 麦片财富积分
关注者: 3
b=reshape(a,40,5).'
<h1 style="color:# 麦片财富积分
:)比较简单啊,
<h1 style="color:# 麦片财富积分
非常感谢!祝您新春快乐,健康!!!
<h1 style="color:# 麦片财富积分
remie 发表于
reshape(a,5,40)
谢谢啦!酷哥!!!
站长推荐 /3
MATLAB中文论坛是全球最大的 MATLAB & Simulink 中文社区。用户免费注册会员后,即可下载代码,讨论问题,请教资深用户及结识书籍作者。立即注册加入我们吧!
MATLAB官方社交平台
MATLAB中文论坛微社区查看: 215|回复: 12
如何将A、B、C三列中的数据通过函数变为二维矩阵的形式
阅读权限10
在线时间 小时
各位大神大家好,有一个问题想请教一下
现在我有一个数据表,有A、B、C三列,现在要将A列和C列分别变为行和列,对应数值为B列的数值。问题是A列和C列的数都不是唯一的,B列的内容是唯一的,该如何写函数公式呢?如果不能一部到位的话,能有比较接近的结果也行,因为后续大几百条数据,处理起来确实费神。求各位走过路过的大神,能在百忙之中指点一下,非常感谢!
附件中是原数据想要达到的效果,不胜感激。
09:45 上传
点击文件名下载附件
9.53 KB, 下载次数: 18
阅读权限70
在线时间 小时
QQ截图37.jpg (93 KB, 下载次数: 0)
10:08 上传
let
& & 源 = Excel.CurrentWorkbook(){[Name=&表1&]}[Content],
& & 更改的类型 = Table.TransformColumnTypes(源,{{&部门&, type text}, {&岗位&, type text}, {&级别&, Int64.Type}}),
& & 分组的行 = Table.Group(更改的类型, {&级别&, &部门&}, {{&计数&, each Text.Combine([岗位],&#(cr)#(lf)&)}}),
& & 已透视列 = Table.Pivot(分组的行, List.Distinct(分组的行[部门]), &部门&, &计数&)
in
& & 已透视列复制代码
阅读权限70
在线时间 小时
(21.64 KB, 下载次数: 5)
10:09 上传
点击文件名下载附件
QQ截图37.jpg (93 KB, 下载次数: 0)
10:09 上传
审核个没完没了
阅读权限30
在线时间 小时
自己看,但有的符合条件的有2个,2010版本作不到这效果,只取了第一个,要全取的话可参照上一行公式放在2个单元格,但放下同一单元格合并形式体现作不到
10:10 上传
点击文件名下载附件
10.17 KB, 下载次数: 3
阅读权限20
在线时间 小时
本帖最后由 astupig 于
11:01 编辑
1. 使用数组公式筛选出不重复项:
2. 使用LOOKUP公式双条件匹配。
B1=IFERROR(INDEX(原始表!$A$2:$A$13,SMALL(IF(MATCH(原始表!$A$2:$A$13,原始表!$A$2:$A$13,0)=ROW($A$2:$A$13)-1,ROW($A$2:$A$13)-1),COLUMN(A1)))&&&,&&)
A2=IFERROR(INDEX(原始表!$C$2:$C$13,SMALL(IF(MATCH(原始表!$C$2:$C$13,原始表!$C$2:$C$13,0)=ROW($C$2:$C$13)-1,ROW($C$2:$C$13)-1),ROW(A1)))&&&,&&)
B2=IFERROR(LOOKUP(1,0/((原始表!$A$2:$A$13=矩阵表!B$1)*(原始表!$C$2:$C$13=VALUE(矩阵表!$A2))),原始表!$B$2:$B$13),&&)
注意,前面两个公式是数组公式,要CTRL+SHIFT+ENTER结束。
阅读权限20
在线时间 小时
我不会直接写,改来的代码,就是把前三列换了下位置
(84.36 KB, 下载次数: 1)
11:31 上传
11:31 上传
点击文件名下载附件
21.12 KB, 下载次数: 2
阅读权限70
在线时间 小时
本帖最后由 micch 于
12:01 编辑
合并单元格需要textjoin函数才好办,如果同一级别同一部门最多会有两个岗位的话,到是可以,再多就很麻烦了
=INDEX(原始表!$B:$B,SMALL(IF((原始表!$A$2:$A$13=B$1)*($A2=原始表!$C$2:$C$13),ROW($2:$13),99),1))&CHAR(10)&INDEX(原始表!$B:$B,SMALL(IF((原始表!$A$2:$A$13=B$1)*($A2=原始表!$C$2:$C$13),ROW($2:$13),99),2))复制代码
阅读权限10
在线时间 小时
审核个没完没了
谢谢亲的方法,非常非常感谢!
阅读权限20
在线时间 小时
我用vba来处理,请看附件是否可以实现你的需求?方法比较笨,数据量大时不知道速度如何?
Sub 表格转换()
Sheet3.Range(&a2:a1000&).ClearContents
Sheet3.Range(&b1:zz1&).ClearContents
Sheet3.Range(&b2:zz1000&).ClearContents
Set d1 = CreateObject(&scripting.dictionary&)
For Each rng1 In Sheet1.Range(&a2:a& & Sheet1.Cells(Rows.Count, 1).End(xlUp).Row)
d1(rng1.Value) = &&
Sheet3.[b1].Resize(1, d1.Count) = Application.Transpose(Application.Transpose(d1.keys))
Set d2 = CreateObject(&scripting.dictionary&)
For Each rng2 In Sheet1.Range(&c2:c& & Sheet1.Cells(Rows.Count, 3).End(xlUp).Row)
d2(rng2.Value) = &&
Sheet3.[a2].Resize(d2.Count) = Application.Transpose(d2.keys)
For Each rng3 In Sheet1.Range(&b2:b& & Sheet1.Cells(Rows.Count, 2).End(xlUp).Row)
Set aa = Sheet3.[b1].Resize(1, d1.Count).Find(rng3(1, 0).Value).EntireColumn
Set bb = Sheet3.[a2].Resize(d2.Count).Find(rng3(1, 2).Value).EntireRow
If Intersect(aa, bb).Value = && Then
Intersect(aa, bb) = rng3
Intersect(aa, bb) = Intersect(aa, bb) & Chr(10) & rng3
13:00 上传
点击文件名下载附件
20.11 KB, 下载次数: 2
阅读权限10
在线时间 小时
自己看,但有的符合条件的有2个,2010版本作不到这效果,只取了第一个,要全取的话可参照上一行公式放在2个 ...
非常感谢!
最新热点 /1
本活动是由微软(中国)有限公司发起,申请通过者可以得到Office 365企业级E3 试用账号,并享有全套Office 365客户端及云端高效、协作办公体验。 机会有限,先到先得!
玩命加载中,请稍候
玩命加载中,请稍候
Powered by
本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任! & & 本站特聘法律顾问:徐怀玉律师 李志群律师拒绝访问 | www.ggdoc.com | 百度云加速
请打开cookies.
此网站 (www.ggdoc.com) 的管理员禁止了您的访问。原因是您的访问包含了非浏览器特征(44a8ab-ua98).
重新安装浏览器,或使用别的浏览器

我要回帖

更多关于 矩阵行列式计算方法 的文章

 

随机推荐