创建一个新列,不在另外两个列的另一个数据帧列中

时间:2017-02-16 15:38:57

标签: r dataframe group-by dplyr data-cleaning

我想根据数据框1中的播放器名称是否不在数据框2的播放器名称列中来创建out_player_1和out_player_2列。 另外,我希望它按团队和日期分组在Dataframe 1中。

基本上,我想说某个球员在某个特定日期出局。 Dataframe 1是一个完整的数据框架,Dataframe 2是每个团队中所有玩家的完整列表。

顺便说一下,

dplyr是首选。速度至关重要,我比dplyr更熟悉data.table

Dataframe 1

date      name   team   
1/1/16    Bill   Hawks  
1/1/16    Bob    Hawks
1/1/16    Matt   Hawks
1/1/16    George Hawks
1/2/16    Bill   Hawks  
1/2/16    Bob    Hawks
1/2/16    Matt   Hawks
1/2/16    Josh   Hawks
1/3/16    Josh   Hawks
1/3/16    Josh   Browns
1/3/16    Bill   Browns
1/3/16    Bob    Browns
1/3/16    George Browns

Dataframe 2

player team 
Bill   Hawks
Bob    Hawks
Matt   Hawks
George Hawks
Josh   Hawks
Bill   Browns
Bob    Browns
Matt   Browns
George Browns
Josh   Browns

所需数据框

date      name   team   out_player_1 out_player_2
1/1/16    Bill   Hawks   Josh           NA
1/1/16    Bob    Hawks   Josh           NA
1/1/16    Matt   Hawks   Josh           NA
1/1/16    George Hawks   Josh           NA
1/2/16    Bill   Hawks   George         NA
1/2/16    Bob    Hawks   George         NA
1/2/16    Matt   Hawks   George         NA
1/3/16    Josh   Hawks   George         Josh
1/3/16    Bob    Hawks   George         Josh
1/3/16    Matt   Hawks   George         Josh
1/3/16    Josh   Browns  Matt           NA
1/3/16    Bill   Browns  Matt           NA
1/3/16    Bob    Browns  Matt           NA
1/3/16    George Browns  Matt           NA

0 个答案:

没有答案