我有一个数据框 df< - as.data.frame(expand.grid(0:1,0:4,0:3,0:7,2:7)) 我想在数据框df
中使用给定的5个变量的2个变量获得所有唯一组合答案 0 :(得分:1)
将函数f
(提取唯一的一对)应用于每对列:
f<-function(col,df)
{
return(unique(df[,col]))
}
#All combinantions
comb_col<-combn(colnames(df),2)
您的输出
apply(comb_col,2,f,df=df)
[[1]]
Var1 Var2
1 0 0
2 1 0
3 0 1
4 1 1
5 0 2
6 1 2
7 0 3
8 1 3
9 0 4
10 1 4
[[2]]
Var1 Var3
1 0 0
2 1 0
11 0 1
12 1 1
21 0 2
22 1 2
31 0 3
32 1 3
...
答案 1 :(得分:0)
您可以使用function callApi(list){
if(!list.length){
return;
}
console.log('start');
restApi(url, function(){
console.log('end');
callApi(list.splice(1));
});
}
包中的distinct
功能:
dplyr
此外,您还可以选择使用df <- as.data.frame(expand.grid(0:1, 0:4, 0:3,0:7, 2:7))
library(dplyr)
df %>%
distinct(Var1, Var2)
参数保留其余列。
如果您想获得所有可能的组合:
.keep_all = TRUE