expand.grid를 복수로 생성할 때
R/handling2019. 5. 25. 01:46
expand.grid(rep(list,n)) : 각각의 list에 대해 모든 조합을 생성
예제
com=function(kb_station,cn){
data=as.matrix(expand.grid(rep(list(kb_station),cn)))
for(i in 1:(ncol(data)-1)){
data=data[data[,i]>data[,i+1],]}
return(data)}
cn=2
kb_station=1:11
temp=com(kb_station,cn)
temp=cbind(temp,NA)
com=function(kb_station,cn){
n=0;ls=list()
while(T){
n=n+1
ls[[cn-n+1]]=kb_station
kb_station=kb_station[-1]
if(n==cn)break
}
data=as.matrix(expand.grid(ls))
for(i in 1:(ncol(data)-1)){
data=data[data[,i]>data[,i+1],]}
return(data)}