2017-10-11 1 views
1

루프로 데이터 프레임을 병합하려고 시도한 다음 병합 된 파일을 R 메모리로 반환하지만 마지막 부분은 작동하지 않습니다. 여기 반복하여 데이터 프레임을 병합 한 다음 반환하십시오.

내 merge_data 기능입니다 :

list<-c("df1", "df2") 
df1 <- diamonds[1:20,] 
df2 <- diamonds[21:40,] 
data2<-diamonds[41:60,] 

merge_data <- function(data){ 
    temp<-merge(data, data2, by.x = "cut", by.y="cut", all.x = T) 
    temp[is.na(temp)] <-"none" 
    print(temp) 
} 

및 병합 된 데이터를 반환하도록되어 문제가있는 부분 프레임

for(i in list){ 
    temp<-(merge_data(get(i))) 
    return(list[i], temp) 
} 
+2

병합 할 유효한 열 이름을 지정해야합니다. "name1"및 "name2"는 데이터에 없습니다. 데이터 프레임의 열 이름이 모두 같은 경우 합병이 올바른지 확신 할 수 없습니다. 아마도 당신은'rbind'를 대신할까요? –

+0

이것은 예일뿐입니다. 예, 원본 데이터 세트를 병합해야합니다. – user2904120

+0

data, data2; data2는이 함수에서 수정되었습니다 – user2904120

답변

2

시도 :

for(i in list){ 
    assign(paste0(i, "_merge"), merge_data(get(i))) 
} 

것은 놀러해야 할 수도 있습니다 병합 후에 요인이 생겨서 생성되지 않음 NA s

관련 문제