楼主: gengyy
5025 9

新手上路:两个矩阵的匹配问题 [推广有奖]

  • 0关注
  • 0粉丝

大专生

23%

还不是VIP/贵宾

-

威望
0
论坛币
15 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
1542 点
帖子
36
精华
0
在线时间
27 小时
注册时间
2010-5-13
最后登录
2021-10-28

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
向各位大侠请教:如果有两个二维数组A,B,A和B中有共同的元素,现在希望能找出B中与A中相同元素的另外一列信息。例如:> b=matrix(1:4,ncol=2,nrow=2,byrow=TRUE)
> b
     [,1] [,2]
[1,]    1    2
[2,]    3    4
> t=c(2,4,3,7)
a=array(t,dim=c(2,2))
a=
     [,1] [,2]
[1,]    2    3
[2,]    4    7
这样,要找到与A中匹配的2,4对应的3,7 如何写语句?
                                                      
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:新手上路 matrix array 各位大侠 相同元素 矩阵 新手

沙发
epoh 发表于 2010-5-14 21:10:51 |只看作者 |坛友微信交流群
要找到与A中匹配的2,4对应的3,7
setdiff(t,a[,1])
[1] 3 7

但你的问题比较困难的应该是,
如何知道a[,1]与b[,2]拥有
三个共同元素之其中相同两个吧?!

使用道具

藤椅
gengyy 发表于 2010-5-14 22:25:30 |只看作者 |坛友微信交流群
哪位大侠指点一下啊,拜托了

使用道具

板凳
gengyy 发表于 2010-5-14 22:29:57 |只看作者 |坛友微信交流群
2# epoh
不太明白这位大侠的意思,我是想通过两个矩阵的共同的一列,找到匹配的其他信息,有什么办法吗

使用道具

报纸
gengyy 发表于 2010-5-14 22:35:47 |只看作者 |坛友微信交流群
b [,1] [,2]  a[,1] [,2]
[1,]         1   2         2    3
[2,]         3    4         4    7
是想要这样匹配,从而得到3,7

使用道具

地板
epoh 发表于 2010-5-14 22:46:56 |只看作者 |坛友微信交流群
是要简单的类似
if(b[1,2]==a[1,1] & b[2,2]==a[2,1]) want=a[,2]
want
[1] 3 7

使用道具

7
xflovespeed 发表于 2010-5-16 21:32:57 |只看作者 |坛友微信交流群
if(sum(a[,2]==b[,1])==nrow(a)) out<-b[,2]

使用道具

8
gengyy 发表于 2010-5-17 22:20:11 |只看作者 |坛友微信交流群
6# epoh 谢谢这位高手的指教,现在我的数组里面有很多这样的匹配,单单这样写语句似乎有些罗嗦

使用道具

9
gengyy 发表于 2010-5-17 22:25:22 |只看作者 |坛友微信交流群
7# xflovespeed 谢谢您的指教,您的方法似乎是针对例子的,我的矩阵中有很多类似的匹配,但是不是所有的都能匹配

使用道具

10
snakepointid 发表于 2015-7-3 15:19:34 |只看作者 |坛友微信交流群
你这个需要2个循环去遍历一遍所有列。
代码:
a<-matrix(1:100,10)
b<-matrix(sample(1:100,100),10)
for(i in 1:10){
  for(j in 1:10){
    ifelse(j<10,print(b[b[,j]%in%a[,i],j+1]),print(b[b[,j]%in%a[,i],1]))
  }
}

其中b[,j]%in%a[,i]返回b矩阵j列与a矩阵i列匹配的行,然后输出这些行在j+1列的数值

使用道具

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

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-5-1 01:26