본문 바로가기
R

R ) do.call 이용해서 cbindlist만들기 feat. rbindlist in r

by C.Mond 2023. 3. 8.
728x90
728x90

안녕하세요 오늘은 rbindlist 함수처럼 동작하는 cbindlist를 만들어보겠습니다

 

rbindlist라는 함수는 존재하지만.. 찾아보니 cbindlist라는 함수는 존재하지 않는것 같습니다..

 

그래서 비슷하게 동작하는 코드를 작성해보려고 합니다.

 

먼저 rbindlist함수는 list에 있는 data frame을 rbind해주는 함수 입니다. 아래를 보면

iris_list <- list()
iris_list[[1]] <- iris
iris_list[[2]] <- iris

리스트자료형에 iris dataframe을 2개 넣어주겠습니다.

그럼 위처럼 list에 2개의 dataframe이 존재하는걸 볼 수 있습니다. 해당 data를 rbindlist를 이용해 묶으면 rbind한것 처럼 결과가 반환 됩니다.

result <- rbindlist(iris_list)

위처럼 반환이 됩니다..

그런데 column방향으로 붙이고 싶을땐 어떻게하느냐...

cbindlist같은게 있을까 싶어 찾아보니 없더군요 그래서 찾은게 do.call이라는 함수 입니다.

 

do.call(함수,list자료형)을 인자로 받는 함수 입니다.

위 list를 cbind해주기 위해

result_do_call <- do.call(cbind,iris_list)

를 실행하면

위 처럼 column방향으로 붙는것을 볼 수 있습니다.

 

rbindlist처럼 cbindlist도 구현이 됐습니다!!

728x90
728x90

댓글