У меня есть вектор строк, которые я хочу использовать в качестве заголовков столбцов для фрейма данных.Попытка динамического создания кадра данных в R
Пример: cols < - c ("A: Ike (N = 428)", "F: Mike (N = 691)", "G: велосипед (N = 380)", "Всего (N = 1499) "," p value ")
У меня есть список списков строк, которые я хочу добавить в качестве данных из моего фрейма данных.
Пример, 1-три ряда:
[[1]] [[1]]$Female [[1]]$Female[[1]] [1] "151" "35.3%"
[[1]]$`Age in Years` [[1]]$`Age in Years`[[1]] NULL
[[1]]$`Mean (SD)` [[1]]$`Mean (SD)`[[1]] [1] "59.7" "11.4"
[[2]] [[2]]$Female [[2]]$Female[[1]] [1] "280" "40.5%"
[[2]]$`Age in Years` [[2]]$`Age in Years`[[1]] NULL
[[2]]$`Mean (SD)` [[2]]$`Mean (SD)`[[1]] [1] "60.3" "11.6"
[[3]] [[3]]$Female [[3]]$Female[[1]] [1] "152" "40%"
[[3]]$`Age in Years` [[3]]$`Age in Years`[[1]] NULL
[[3]]$`Mean (SD)` [[3]]$`Mean (SD)`[[1]] [1] "59.8" "11.5"
[[4]] [[4]]$Female [[4]]$Female[[1]] [1] "583" "38.9%"
[[4]]$`Age in Years` [[4]]$`Age in Years`[[1]] NULL
[[4]]$`Mean (SD)` [[4]]$`Mean (SD)`[[1]] [1] "60" "11.5"
[[5]] [[5]]$Female [[5]]$Female[[1]] [1] "0.190"
[[5]]$`Age in Years` [[5]]$`Age in Years`[[1]] [1] "0.614"
IOW, я хочу кадр данных, где столбец 1 называются именами [1] и состоит из frameLists [[1]].
Per ниже предложения, я изменил код на следующее:
outFrame <- do.call(data.frame, c(frameLists, stringsAsFactors = FALSE))
colnames(outFrame) <- cols
Результаты приходят обратно глядя, как это:
A: Ike (N=428) F: Mike (N=691) G: Bike (N=380) Total (N=1499) p value NA NA NA NA NA
1 151 59.7 280 60.3 152 59.8 583 60 0.190 0.614
2 35.3% 11.4 40.5% 11.6 40% 1.5 38.9% 11.5 0.190 0.614
Результаты Я хочу:
A: Ike (N=428) F: Mike (N=691) G: Bike (N=380) Total (N=1499) p value
1 151, 35.3% 280, 40.5% 152, 40% 583, 38.9% 0.190
2 0.614
3 59.7, 11.4 60.3, 11.6 59.8, 11.5 60, 11.5
Что такое 'names'? пожалуйста, опубликуйте вывод имен – MaxPD
. На самом деле вы пытаетесь создать столбец динамически, а не фреймворк данных. Есть ли в framefists frameframe столбцы с именем «1»? Попробуйте frameLists [который] с одиночной квадратной скобкой. – MaxPD
'names' и' which' являются функциями R. Старайтесь избегать использования имен функций в качестве имен объектов, это запутывает. – marbel