楼主: yan_huili
12364 4

[问答] R 如何实现对应列相减 [推广有奖]

  • 0关注
  • 0粉丝

大专生

43%

还不是VIP/贵宾

-

威望
0
论坛币
70 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
339 点
帖子
26
精华
0
在线时间
46 小时
注册时间
2017-11-15
最后登录
2019-2-22

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
例:数据框A=
V1        V2        V3        V4
4        4        4        4
5        5        5        5
6        6        6        6
数据框B=
V1        V2        V3        V4
1        2        3        4
想要得到
V1        V2        V3        V4
3        2        1        0
4        3        2        1
5        4        3        2
就是想要第一列减第一列,第二列减第二列,不用循环,如何实现呢?

二维码

扫码加我 拉你入群

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

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

关键词:如何实现

沙发
wangfs111222 发表于 2018-8-7 18:29:45 |只看作者 |坛友微信交流群
把A转置一下,然后a-b,再转置回来就可以了
已有 1 人评分论坛币 收起 理由
cheetahfly + 10 热心帮助其他会员

总评分: 论坛币 + 10   查看全部评分

使用道具

藤椅
yan_huili 发表于 2018-8-13 10:16:41 |只看作者 |坛友微信交流群
wangfs111222 发表于 2018-8-7 18:29
把A转置一下,然后a-b,再转置回来就可以了
但是这样只能得到第一列减去第一个数的值:result=3,2,1,0
而我想得到结果是个矩阵

使用道具

板凳
kaifengedu 发表于 2018-8-14 11:54:41 |只看作者 |坛友微信交流群
  1. A <- matrix(4:6,nrow=3,ncol=4)
  2. A
  3. B <- matrix(1:4,ncol=4)
  4. B
  5. NB <- matrix(B,nrow=3,ncol=4,byrow = TRUE)
  6. NB
  7. A-NB
复制代码

使用道具

报纸
jgchen1966 发表于 2018-8-15 11:16:22 |只看作者 |坛友微信交流群
### 如果就这么小小的二个数集,则方法很简单:

  A-dplyr::bind_rows(B,B,B)
##  即得你要的结果
## 但是,若A数据是上万行的数据集,则要另谋对策了。。
##

使用道具

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

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

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

GMT+8, 2024-5-1 14:20