2292 4

[问答] 求助,R语言数据框间按匹配条件赋值的问题 [推广有奖]

  • 0关注
  • 0粉丝

等待验证会员

初中生

57%

还不是VIP/贵宾

-

威望
0
论坛币
10 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
56 点
帖子
3
精华
0
在线时间
30 小时
注册时间
2019-8-24
最后登录
2021-4-18

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
问题示例:我有两个数据框Data1和Data2请见下图(为方便展示,放在了一个表中,中间以空白列隔开),我希望将Data2中Ratio列的数值按ID号赋给Data1中的空白列(Ratio from Data2列)。如果ID相同,则赋予相同数值。如Data1中ID为A的有5行,则此5行在Ratio from Data2列的值均应为0.04。请问有什么R函数可以方便地完成这一操作。小白在此先谢过了!
Data1Data2
ID

Values

Ratio from Data2

ID

Ratio

A

0.145945634

A

0.04

A

0.14396391

B

0.14

A

0.13982855

C

0.15

A

0.135692763

D

0.34

A

0.134204959

E

0.53

B

0.128215271

F

0.13

B

0.126822839

G

0.21

B

0.126005124

H

0.17

C

0.121219095

I

0.12

C

0.120641914

J

0.11

C

0.119769678

K

0.07

C

0.119030046

C

0.116167505

C

0.115053331

C

0.115026141

C

0.114760197

C

0.114596269

C

0.114565784

D

0.114547963

D

0.11345414

E

0.112735662

E

0.112156812

E

0.111970311

E

0.111357446

E

0.11124341

F

0.111175774

F

0.111101825

G

0.11096284

G

0.110785531

G

0.110404219

G

0.109572704

H

0.108534145

H

0.108121629

H

0.107527172

I

0.106849994

I

0.106833391

I

0.106587714

J

0.106438869

J

0.105706055

K

0.00392837

K

0.18293745

K

0.10238463

K

0.098273625



二维码

扫码加我 拉你入群

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

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

关键词:R语言 数据框 values ratio value

回帖推荐

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

tmp = table(Data1$ID) Data2$Ratio_from_Data2 = rep(Data2$Ratio,tmp)

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

library(dplyr) newData % left_join(data2, by = "ID")
沙发
szxship 发表于 2021-2-20 17:41:50 |只看作者 |坛友微信交流群
tmp = table(Data1$ID)
Data2$Ratio_from_Data2 = rep(Data2$Ratio,tmp)

使用道具

szxship 发表于 2021-2-20 17:41
tmp = table(Data1$ID)
Data2$Ratio_from_Data2 = rep(Data2$Ratio,tmp)
非常感谢!!按您说的方法已解决此问题。看来我对table和rep函数的理解还是太浅薄了

使用道具

板凳
llb_321 在职认证  发表于 2021-2-21 07:52:38 |只看作者 |坛友微信交流群
library(dplyr)
newData <- data1 %>% left_join(data2, by = "ID")

使用道具

llb_321 发表于 2021-2-21 07:52
library(dplyr)
newData % left_join(data2, by = "ID")
多谢!这个函数用法我还有些陌生,我学习一下

使用道具

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

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

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

GMT+8, 2024-4-26 01:17