R 如何使用另一个数据集匹配和筛选数据集?
我真的不知道怎么问这个问题,所以让我举个例子 我有一个数据集,它有超过50k个条目,包括地址。像这样R 如何使用另一个数据集匹配和筛选数据集?,r,for-loop,data.table,R,For Loop,Data.table,我真的不知道怎么问这个问题,所以让我举个例子 我有一个数据集,它有超过50k个条目,包括地址。像这样 streets <- c("st1","st2","st3","st4","st10000","st50000") 街道这里有一个选项: teams <- c("barcelona","rmadrid","liverpool") DT <- rbindlist(lapply(mget(teams), function(x) data.table(Player=trimws(s
streets <- c("st1","st2","st3","st4","st10000","st50000")
街道这里有一个选项:
teams <- c("barcelona","rmadrid","liverpool")
DT <- rbindlist(lapply(mget(teams), function(x) data.table(Player=trimws(strsplit(x,",")[[1L]]))),
idcol="Team")
data.table(Player=strsplit(players, ",")[[1L]])[DT, on=.(Player), Team := Team][]
哈维、普约尔和杰拉德都退役了吗?罗纳尔多还在皇家马德里
数据:
players这里有一个选项:
teams <- c("barcelona","rmadrid","liverpool")
DT <- rbindlist(lapply(mget(teams), function(x) data.table(Player=trimws(strsplit(x,",")[[1L]]))),
idcol="Team")
data.table(Player=strsplit(players, ",")[[1L]])[DT, on=.(Player), Team := Team][]
哈维、普约尔和杰拉德都退役了吗?罗纳尔多还在皇家马德里
数据:
players你真的把这种形式的数据作为一个逗号分隔的字符串吗?我有一个巨大的数据集,在一列中有超过55k个条目。。。我正在创建另一个数据集来对这些值进行分类。您应该共享一个准确表示您的数据的示例,否则您将很难将答案应用于您的数据。请阅读有关的信息以及如何给出一个。好的,我现在就试试。为什么您希望输出为逗号分隔的字符串?您真的有这种形式的数据作为一个逗号分隔的字符串吗?我有一个巨大的数据集,在一列中有超过55k个条目。。。我正在创建另一个数据集来对这些值进行分类。您应该共享一个准确表示您的数据的示例,否则您将很难将答案应用于您的数据。请阅读关于和如何给出a的信息。好的,我现在就试试。你为什么希望输出为逗号分隔的字符串?是的,我对足球不太感兴趣,但我找不到更好的例子:)这对我不起作用。我想我无法正确地表达自己。让我来解决这个问题。我有一个列(dataset1),包含50k+个条目,其中一些是重复值。我必须对此进行分类,但我没有其他数据集,所以我创建了一个数据集,其中包括50多个类别和数据集1中的每个不同值。因此,当R在dataset1中看到“xxx1”时,它应该在dataset2中查找它,并在“xxx1”附近添加其类别值(如果存在匹配项)。就像我说的,我可能需要拉普拉和for loop,但idk。是的,我对足球不太感兴趣,但我找不到更好的例子:)这对我不起作用。我想我无法正确地表达自己。让我来解决这个问题。我有一个列(dataset1),包含50k+个条目,其中一些是重复值。我必须对此进行分类,但我没有其他数据集,所以我创建了一个数据集,其中包括50多个类别和数据集1中的每个不同值。因此,当R在dataset1中看到“xxx1”时,它应该在dataset2中查找它,并在“xxx1”附近添加其类别值(如果存在匹配项)。就像我说的,我可能需要lappy和for循环,但是idk。
teams <- c("barcelona","rmadrid","liverpool")
DT <- rbindlist(lapply(mget(teams), function(x) data.table(Player=trimws(strsplit(x,",")[[1L]]))),
idcol="Team")
data.table(Player=strsplit(players, ",")[[1L]])[DT, on=.(Player), Team := Team][]
Player Team
1: Xavi barcelona
2: Puyol barcelona
3: Iniesta barcelona
4: Messi barcelona
5: Gerrard liverpool
6: Salah liverpool
7: Mane liverpool
8: Ronaldo rmadrid
9: Ramos rmadrid
10: Hazard rmadrid
players <- "Xavi,Puyol,Iniesta,Messi,Gerrard,Salah,Mane,Ronaldo,Ramos, Hazard"
barcelona <- "Xavi,Puyol,Iniesta,Messi"
rmadrid <- "Ronaldo,Ramos,Hazard"
liverpool <- "Gerrard,Salah,Mane"