使用 magrittr 重命名列表
Renaming with list with magrittr
我一直在玩 magrittr,我非常喜欢生成的代码。它很干净,可以真正节省打字时间。
如何重命名 magrittr 中的列表元素:
在典型的基础 R 中:
data_lists <- paste0("q",2011:2015)
data_lists <- lapply(data_lists,get)
names(data_lists) <- paste0("q",2011:2015)
在magrittr中,我认为:
data_lists <-
paste0("q",2011:2015) %>%
lapply(.,get) %>%
names(.) %<>% paste0("q",2011:2015) # this is wrong
但是...没有骰子。
Magrittr 对这种性质的问题使用了很多别名。这是使用别名 set_names()
的示例序列
data_lists <-
paste0("q",2011:2015) %>%
lapply(.,get) %>%
set_names(paste0("q",2011:2015))
请参阅 ?extract
了解更多别名
因为 R 中的一切都是函数(大部分),您也可以这样做
data_lists <-
paste0("q",2011:2015) %>%
lapply(.,get) %>%
`names<-`(paste0("q",2011:2015))
我一直在玩 magrittr,我非常喜欢生成的代码。它很干净,可以真正节省打字时间。
如何重命名 magrittr 中的列表元素:
在典型的基础 R 中:
data_lists <- paste0("q",2011:2015)
data_lists <- lapply(data_lists,get)
names(data_lists) <- paste0("q",2011:2015)
在magrittr中,我认为:
data_lists <-
paste0("q",2011:2015) %>%
lapply(.,get) %>%
names(.) %<>% paste0("q",2011:2015) # this is wrong
但是...没有骰子。
Magrittr 对这种性质的问题使用了很多别名。这是使用别名 set_names()
data_lists <-
paste0("q",2011:2015) %>%
lapply(.,get) %>%
set_names(paste0("q",2011:2015))
请参阅 ?extract
了解更多别名
因为 R 中的一切都是函数(大部分),您也可以这样做
data_lists <-
paste0("q",2011:2015) %>%
lapply(.,get) %>%
`names<-`(paste0("q",2011:2015))