Как сохранить столбец группы в каждом столбце и переименовать их? - PullRequest
0 голосов
/ 23 января 2019

У меня есть следующее list-column, которое называется my$data:

library(tidyverse)

dataset<-data.frame(matrix(rnorm(6*30,1000,100),ncol=6))
cluster<-kmeans(dataset,centers=3)
dataset$kmeans<-as.factor(cluster[['cluster']])

my<-dataset%>%
  group_by(kmeans)%>%
  nest()

У меня есть два сомнения:

  • как сохранить kmeans столбец в каждом tibble в списке-столбце?
  • как переименовать tibble s в столбец списка (например, 6 переменных в data1, data2 и data3)?

С помощью функции base::split столбец группы сохраняется. Пример: * 1 023 *

mylist<-split(dataset,dataset$kmeans)

и base::names функция:

names(mylist)<-paste0('data',seq_along(mylist))

1 Ответ

0 голосов
/ 23 января 2019

Не уверен, возможно ли иметь сгруппированный столбец в nest, однако альтернативой является создание копии столбца и затем использование nest.

library(tidyverse)

mydata <- dataset %>%
              mutate(new_kmean = kmeans) %>%
              group_by(kmeans) %>%
              nest()

names(mydata$data) <- paste0('data',seq_along(mydata$data))


mydata$data

#$data1
# A tibble: 16 x 7
#    X1    X2    X3    X4    X5    X6 new_kmean
#   <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <fct>    
# 1  952. 1057. 1037. 1049.  871. 1103. 3        
# 2 1042.  986. 1027.  982.  836. 1121. 3        
# 3  990.  996. 1121. 1134.  998. 1098. 3 
#....      
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...