楼主: 菩提镜
1354 3

[问答] 两个list列表取值 [推广有奖]

  • 2关注
  • 0粉丝

博士生

34%

还不是VIP/贵宾

-

威望
0
论坛币
5 个
通用积分
31.3330
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
31819 点
帖子
28
精华
0
在线时间
497 小时
注册时间
2012-1-13
最后登录
2024-12-11

楼主
菩提镜 发表于 2021-4-22 14:14:38 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
list1=list(x = c(1,3), y = c(2,4))
list2=list(x = matrix(1:12, 3), y = matrix(1:12, nrow = 4))
请教:如何将list1中x和y的数值视作坐标值,将list2中对应元素的矩阵按照坐标值将数取出。

二维码

扫码加我 拉你入群

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

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

关键词:list IST matrix 对应元素 Mat

回帖推荐

llb_321 发表于2楼  查看完整内容

你的第个list2中的y是4*3矩阵,取不出list1中的y(2,4),超出列数限制了 改了一下

zhou1_20 发表于3楼  查看完整内容

沙发
llb_321 在职认证  发表于 2021-4-22 15:19:17
你的第个list2中的y是4*3矩阵,取不出list1中的y(2,4),超出列数限制了
改了一下
  1. list1 = list(x = c(1, 3), y = c(2, 3))
  2. list2 = list(x = matrix(1:12, 3), y = matrix(1:12, nrow = 4))
  3. list2[["x"]][list1[["x"]][1], list1[["x"]][2]]
  4. list2[["y"]][list1[["y"]][1], list1[["y"]][2]]
复制代码

藤椅
zhou1_20 发表于 2021-4-22 15:42:48
  1. list1=list(x = c(1,3), y = c(2,3))
  2. list2=list(x = matrix(1:12, 3), y = matrix(1:12, nrow = 4))

  3. lapply(list2,function(z) z[list1$x,list1$y])
复制代码

板凳
菩提镜 发表于 2021-4-25 21:26:53
zhou1_20 发表于 2021-4-22 15:42
谢谢您的回复。lapply这句报错,运行不了。以本例,我想要的结果是list2$x[1,3]=7 , list2$y[2,3]=10 ;要的是7与10这两个数。

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-28 09:20