문자 벡터를 반복하고 각 값에 대해 약간 다른 쿼리를 실행하려고합니다. 그런 다음 결과를 캡처하여 로컬로 rdata 파일로 저장하려고합니다. 저장되면 R 개체를 삭제할 수 있습니다.루프에서 저장된 객체의 이름을 동적으로 지정합니다.
나는 내가 sapply/적용 할이 일을해야하며, 그 작업을 수행하는 방법에 대한 팁을 주셔서 감사 것이라고 알고 ... 그러나
, 내 주요 문제는 그 RDATA 파일은 이름을 잘 저장하면서 나는 R에 다시로드 할 때 (예를 들어, "TABLE1", "TABLE2")를 원했을 것입니다. 모든 이름이 "thisname"인 객체 이름을 가지고 있습니다. "1 번 테이블"). 나는이 일을 너무 오랫동안 시도하고있다.
누구나 제안 사항이 있으면 알려 주시면 감사하겠습니다.
tables = c('TABLE1','TABLE2')
for (i in 1:length(tables)){
thisname=paste0(tables[i])
data= sqlQuery(oracle.channel, paste("select * from",table_renamer(tables[i]),"WHERE ROWNUM<10;"))
assign(thisname,data)
save(thisname, file=file.path(paste0(tables[i],".RData")))
rm(thisname)
rm(thisdf)
}
감사를 배웠 :
진짜 트릭은 목록을 저장했다. 내 패키지는 데이터가 data()를 통해로드 될 것을 요구하기 때문에 saveRDS()를 사용할 수 없습니다. 이는 데이터를 .RData 및 rda 파일로 제한합니다. 결국 나는 스택 오버플로에 대한 해결책을 발견하고 내 질문을 복제본으로 표시했습니다. 누군가가이 게시물을 발견 할 경우를 대비하여 최종 해결책을 게시 할 것입니다. –
gruvn