이것은 파이프 (https://github.com/hrbrmstr/rstudioconf2017/blob/master/presentation/writing-readable-code-with-pipes.key.pdf)로 너무 많은 것을하려는 경우와 같습니다. 좀 프로세스를 분할하는 것이 좋습니다 것입니다 : 당신이 정말로 하나의 파이프로이 작업을 수행해야합니다 경우가 USE.NAMES
인수를 가지고, 당신은 대신 mapply
를 사용해야합니다
# Get vector of files
files <- list.files("C:/path/to/files", pattern = "\\.feather$")
# Form object names
object_names <-
files %>%
basename %>%
file_path_sans_ext
# Read files and add to environment
lapply(files,
read_feather) %>%
setNames(object_names) %>%
list2env()
.
list.files("C:/path/to/files", pattern = "\\feather$") %>%
mapply(read_feather,
.,
USE.NAMES = TRUE,
SIMPLIFY = FALSE) %>%
setNames(names(.) %>% basename %>% tools::file_path_sans_ext) %>%
list2env()
가 개인적으로, 나는 디버깅을 할 갈 때 설득 할 첫 번째 옵션을 쉽게 찾을 수 있습니다 (I 파이프 내 파이프의 팬이 아니에요).
'? list2env()' – Vlo
[이 게시물에 대한 gregor의 답변을 읽으십시오 (http://stackoverflow.com/questions/17499013/how-do-i-make-a-list-of-data) - 프레임). 일반적으로 비슷한 개체를 목록에 보관하는 것이 좋습니다. – lmo
@lmo 이들은 유사한 객체 (사용자 대 계정)가 아닐 수도 있습니다. – Frank