Код эффективно преобразует каждый вектор в список и объединяет результаты по строкам в общий фрейм данных.
аюсь преобразовать список векторов (по сути, многомерный массив) в фрейм данных, но каждый раз, когда я пытаюсь, я получаю неожиданные результаты.
Моя цель - создать пустой список, заполнить его в цикле for векторами, содержащими информацию об этой итерации цикла, а затем преобразовать его в кадр данных после его завершения.
> vectorList <- list()
> for(i in 1:5){
+ vectorList[[i]] <- c("number" = i, "square root" = sqrt(i))
+ }
> vectorList
Выходы:
> [[1]]
> number square root
> 1 1
>
> [[2]]
> number square root
> 2.000000 1.414214
>
> [[3]]
> number square root
> 3.000000 1.732051
>
> [[4]]
> number square root
> 4 2
>
> [[5]]
> number square root
> 5.000000 2.236068
Теперь я хочу, чтобы это стало фреймом данных с 5 наблюдениями 2 переменных, но пытаюсь создать фрейм данных из 'vectorList'
numbers <- data.frame(vectorList)
приводит к 2 наблюдениям 5 переменных.
Странно, но даже с reshape2 это не будет вызвано (что, я знаю, было бы ужасной работой, но я пытался).
У кого-нибудь есть понимание?