gpt4 book ai didi

r - 通过匹配变量将值从一个 data.frame 添加到另一个 data.frame

转载 作者:行者123 更新时间:2023-12-03 17:44:21 27 4
gpt4 key购买 nike

假设我有两个数据框 df1 和 df2 如下

Df1

Id Price Profit Month
10 5 2 1
10 5 3 2
10 5 2 3
11 7 3 1
11 7 1 2
12 0 0 1
12 5 1 2

Df2

Id Name
9 Kane
10 Jack
10 Jack
11 Will
12 Matt
13 Lee
14 Han

现在我想在 Df1 中插入一个新列命名 Name并从 Df2 获取它的值基于匹配 Id
所以修改后的 Df1 将是
Id Price Profit Month Name
10 5 2 1 Jack
10 5 3 2 Jack
10 5 2 3 Jack
11 7 3 1 Will
11 7 1 2 Will
12 0 0 1 Matt
12 5 1 2 Matt

最佳答案

df1 <- data.frame(Id=c(10L,10L,10L,11L,11L,12L,12L),Price=c(5L,5L,5L,7L,7L,0L,5L),Profit=c(2L,3L,2L,3L,1L,0L,1L),Month=c(1L,2L,3L,1L,2L,1L,2L),stringsAsFactors=F);
df2 <- data.frame(Id=c(9L,10L,10L,11L,12L,13L,14L),Name=c('Kane','Jack','Jack','Will','Matt','Lee','Han'),stringsAsFactors=F);
df1$Name <- df2$Name[match(df1$Id,df2$Id)];
df1;
## Id Price Profit Month Name
## 1 10 5 2 1 Jack
## 2 10 5 3 2 Jack
## 3 10 5 2 3 Jack
## 4 11 7 3 1 Will
## 5 11 7 1 2 Will
## 6 12 0 0 1 Matt
## 7 12 5 1 2 Matt

关于r - 通过匹配变量将值从一个 data.frame 添加到另一个 data.frame,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36244878/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com