Сохранить тип переменной в преобразовании cbind (из списка в data.frame) R - PullRequest
0 голосов
/ 22 сентября 2018

сообщество.У меня следующая проблема.

Предположим, у меня есть следующий список.Как я могу превратить его в data.frame или data.table без преобразования обеих переменных в символьный тип?Мне нужно сохранить исходный тип переменной (строковой и числовой).

my_list<-list()
my_list[[1]]<-c("A","B","C")
my_list[[2]]<-c(1,2,3)
do.call(cbind,my_list)

     [,1] [,2]
[1,] "A"  "1" 
[2,] "B"  "2" 
[3,] "C"  "3" 

Большое спасибо!

Итак, окончательный результат должен быть:

[,1] [,2]
[1,] "A"  1 
[2,] "B"  2 
[3,] "C"  3 

1 Ответ

0 голосов
/ 22 сентября 2018

Вы можете использовать bind_cols из dplyr:

library(dplyr)

str(bind_cols(my_list))
#Classes ‘tbl_df’, ‘tbl’ and 'data.frame':  3 obs. of  2 variables:
# $ V1: chr  "A" "B" "C"
# $ V2: num  1 2 3

Или напрямую создать фрейм данных:

df <- data.frame(
  str = c("A", "B", "C"),
  int = c(1, 2, 3)
)

str(df)
#'data.frame':  3 obs. of  2 variables:
# $ str: Factor w/ 3 levels "A","B","C": 1 2 3
# $ int: num  1 2 3
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...