Это следующее с другого вопроса Extracting from Nested list to data frameПреобразование кадра данных с использованием имени столбца
Используя обновленный ответ я получаю мой кадр данных Начну с.
Затем я использую df <- data.frame(start = df3[5,])
Так я остался с:
dput(df)
structure(list(start.X1_1 = structure(4L, .Names = "experience.start", .Label = c("",
" ", "1", "2015"), class = "factor"), start.X2_2 = structure(3L, .Names = "experience.start", .Label = c(" ",
"1", "2011"), class = "factor"), start.X3_2 = structure(3L, .Names = "experience.start", .Label = c(" ",
"1", "2007"), class = "factor"), start.X4_2 = structure(NA_integer_, .Names = "experience.start", .Label = c(" ",
"1"), class = "factor"), start.X5_2 = structure(NA_integer_, .Names = "experience.start", .Label = c(" ",
"1"), class = "factor"), start.X6_2 = structure(NA_integer_, .Names = "experience.start", .Label = c(" ",
"1"), class = "factor"), start.X7_2 = structure(NA_integer_, .Names = "experience.start", .Label = c(" ",
"1"), class = "factor"), start.X8_2 = structure(NA_integer_, .Names = "experience.start", .Label = c(" ",
"1"), class = "factor"), start.X9_2 = structure(NA_integer_, .Names = "experience.start", .Label = c(" ",
"1"), class = "factor"), start.X10_3 = structure(3L, .Names = "experience.start", .Label = c(" ",
"1", "2016", "3000"), class = "factor"), start.X11_3 = structure(3L, .Names = "experience.start", .Label = c(" ",
"1", "2015", "3000"), class = "factor"), start.X12_3 = structure(4L, .Names = "experience.start", .Label = c("",
" ", "1", "2015", "2016", "EE"), class = "factor"), start.X13_3 = structure(4L, .Names = "experience.start", .Label = c("",
" ", "1", "2014", "2015"), class = "factor"), start.X14_3 = structure(3L, .Names = "experience.start", .Label = c(" ",
"1", "2013", "2014"), class = "factor"), start.X15_3 = structure(3L, .Names = "experience.start", .Label = c(" ",
"1", "2010", "2011", "Virtusa"), class = "factor")), .Names = c("start.X1_1",
"start.X2_2", "start.X3_2", "start.X4_2", "start.X5_2", "start.X6_2",
"start.X7_2", "start.X8_2", "start.X9_2", "start.X10_3", "start.X11_3",
"start.X12_3", "start.X13_3", "start.X14_3", "start.X15_3"), row.names = "experience.start", class = "data.frame")
Теперь я хотел бы получить в формате:
v1 v2 v3 v4 v5 v6 v7 v8
1 2015
2 2011 2007 null null null null null null
3 2016 2015 2015 2015 2013 2010
я могу использовать следующее найти столбцы, которые соответствуют
sR <- function(x, n){
substr(x, nchar(x)-n+1, nchar(x))}
sR(names(df),2)
[1] "_1" "_2" "_2" "_2" "_2" "_2" "_2" "_2" "_2" "_3" "_3" "_3" "_3" "_3" "_3"
Так что я думаю отсюда должен быть способ, которым я могу добраться до желаемого результата.
Или я уверен, что кто-то показать мне лучший способ
Я не могу сделать первую строку: Ошибка в stack.data.frame (DF): нет векторных столбцы не были выбраны – Olivia
О, вы должны преобразовать характер. Я добавлю его – Sotos
в любом случае, вы можете объяснить свой ответ, мне нужно перераспределить раскол и стек, но я не люблю использовать ответы, не понимая, что происходит. Еще раз спасибо – Olivia