我有一个大数据框,其中包含有关体育比赛结果的数据。我想尝试从数据框中提取特定数据,具体取决于某些标准。这是我的意思的一个简单例子...... 想象一下,我有一个数据框df,它显示每行锦标赛特定足球比赛的数据,如下所示:
{
"TypedValue": {
"__type": "TypedSurrogateOfdateTime:#Question39973917",
"Value": "/Date(1476244800000)/"
}
}
所以,例如,在第[1]行中,Man utd赢得了反对Barcalona,Man utd的队长的名字是John,他来自英格兰。巴尔卡洛纳(比赛的输家)队长的名字是卡洛斯,他来自西班牙。
我想构建一个带有锦标赛中所有英国玩家名字的矢量,输出应该是这样的:
Winner_Teams Win_Capt_Nm Win_Country Loser_teams Lose_Capt_Nm Lose_Country
1 Man utd John England Barcalona Carlos Spain
2 Liverpool Steve England Juventus Mario Italy
3 Man utd John Scotland R Madrid Juan Spain
4 Paris SG Teirey France Chelsea Mark England
这是我到目前为止所尝试过的... 我的第一步是创建一个数据框,丢弃所有没有英语队长的比赛
[1] "John" "Mark" "Steve"
然后我在England_player上使用select()来仅隔离名称:
> England_player <- data.frame(filter(df, Win_Country=="England" ))
> England_player
Winner_Teams Win_Capt_Nm Win_Country Loser_teams Lose_Capt_Nm Lose_Country
1 Man utd John England Barcalona Carlos Spain
2 Liverpool Steve England Juventus Mario Italy
3 Paris SG Teirey France Chelsea MArk England
然后我卡住了!如您所见,输出显示英国获胜者的名字和对手的名字......这不是我想要的! 只需从这个数据框中读取名称就很容易..但我正在使用的数据框很大,所以只读取值并不好! 关于我如何做这个的任何建议?
答案 0 :(得分:5)
english.players <- union(data$Win_Capt_Nm[data$Win_Country == 'England'], data$Lose_Capt_Nm[data$Lose_Country == 'England'])
[1] "John" "Steve" "Mark"