找回密码
 注册
Simdroid-非首页
查看: 108|回复: 4

[基础概念] 请教提取矩阵中元素

[复制链接]
发表于 2010-4-29 09:47:21 | 显示全部楼层 |阅读模式 来自 江苏南京
{{"", "", "", ""}, {1., "x", "y", "z"}, {1., "c", "v", "b"}, {1., "n", "m", "j"}, {1., "f", "g", "h"}, {1., "r", "t", "y"}, {1., "u", "i","o"}, {1., "j", "k", "l"}, {2., "q", "w", 3.}, {2., "j", "k", "l"}, {3., "f", "g", "h"}},我想把行向量中第一个元素相同的子矩阵提取出来,并且按顺序命名子矩阵。结果如下:
a1={"", "", "", ""},a2={ {1., "x", "y", "z"}, {1., "c", "v", "b"}, {1., "n","m", "j"},{ 1., "f", "g", "h"}, {1., "r", "t", "y"}, {1., "u", "i",
   "o"}, {1., "j", "k", "l"}},a3={{2., "q", "w", 3.}, {2., "j", "k",
  "l"}},a4={{3., "f", "g", "h"}}

请问什么方法可以比较方便的写出来?谢谢
发表于 2010-4-29 10:02:25 | 显示全部楼层 来自 上海
Simdroid开发平台

  1. table = {{"", "", "", ""}, {1., "x", "y", "z"}, {1., "c", "v",
  2.     "b"}, {1., "n", "m", "j"}, {1., "f", "g", "h"}, {1., "r", "t",
  3.     "y"}, {1., "u", "i", "o"}, {1., "j", "k", "l"}, {2., "q", "w",
  4.     3.}, {2., "j", "k", "l"}, {3., "f", "g", "h"}};
  5. GatherBy[table, First]
复制代码
回复 不支持

使用道具 举报

 楼主| 发表于 2010-4-29 10:27:08 | 显示全部楼层 来自 江苏南京
谢谢!太精炼了,呵
回复 不支持

使用道具 举报

发表于 2010-4-29 10:41:27 | 显示全部楼层 来自 台湾
SplitBy[table, #[[1]] &] 也是可以!
回复 不支持

使用道具 举报

 楼主| 发表于 2010-4-30 12:48:31 | 显示全部楼层 来自 安徽淮北
请问,我连续的定义  a1=子矩阵1,a2=子矩阵2,a3=子矩阵3,矩阵名字a1,a2,a3如何可以连续定义(在a保持不变的情况下,后面的编号由1~3),能否把分出来的子矩阵直接付给a1,a2,a3?
回复 不支持

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-5-3 23:48 , Processed in 0.057607 second(s), 13 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表