получение факторов из набора данных столбца - PullRequest
0 голосов
/ 27 марта 2020

У меня есть набор данных R со столбцом "location_type". Тип местоположения: список 15057

head(ds $ location_type)

[[1]]
[1] "store"

[[2]]
[1] "store"     "service"

[[3]]
[1] "store"     "service"

[[4]]
[1] "store"     "service"     "regular appointment"

Я пытаюсь преобразовать эти значения в коэффициенты, поскольку сейчас они отображаются в виде списка внутри этой переменной, поэтому я получаю следующие факторы

магазин магазин услуг постоянный прием в магазине

эта функция дает только, но NA

ds$location_type1 <- factor(ds$location_type, levels=c("store","store service","store service regular appointment"))

я буду признателен за вашу помощь!

Ответы [ 2 ]

0 голосов
/ 27 марта 2020

Мы также можем сделать это в tidyverse

library(purrr)
library(stringr)
library(dplyr)
ds %>%
   mutate(location_type = factor(map_chr(location_type, str_c, collapse=" ")))
0 голосов
/ 27 марта 2020

Поскольку location_type является списком, мы можем paste всех отдельных элементов в нем создать единственное значение, которое можно преобразовать в factor.

ds$location_type <- factor(sapply(ds$location_type, paste, collapse = " "))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...