Изменение многих типов столбцов в r с purrr

Если вы не против использовать C ++ 11, вот умный помощник, который похож на (но менее уродливый, чем) статический кастинг:

template
auto resolve(R (T::*m)(Args...)) -> decltype(m)
{ return m; }

template
auto resolve(R (T::*m)(void)) -> decltype(m)
{ return m; }

(Работает для функций-членов; быть очевидным, как изменить его, чтобы работать для автономных функций, и вы должны быть в состоянии предоставить обе версии, а компилятор выберет правильный для вас.)

Благодаря Miro Knejp за предложение: см. Также https://groups.google.com/a/isocpp.org/d/msg/std-discussion/rLVGeGUXsK0/IGj9dKmSyx4J .

0
задан David 18 January 2019 в 16:04
поделиться

2 ответа

В этом случае вам не обязательно нужен purrr. Вы можете использовать dplyr

library(dplyr)

mutate_at(mtcars, c("am", "gear"), as.character)
0
ответ дан Jake Kaupp 18 January 2019 в 16:04
поделиться

В этом случае вам не обязательно нужен dplyr. Вы можете использовать base R:

cols <- c("am", "gear")
mtcars[cols] <- lapply(mtcars[cols], as.character)
0
ответ дан sindri_baldur 18 January 2019 в 16:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: