Вращающаяся строка и столбец в кадре данных в R - PullRequest
0 голосов
/ 12 мая 2018

я хочу повернуть data.frame в R. мой dataframe выглядит следующим образом:

d <- data.frame( A = c("Att1","Att2"), b = c(12,10), c =c(8,9), d =c (1,2))

и в конце мой dataframe должен выглядеть следующим образом:

d2 <- data.frame( name = c("B","C","D"), Att1 = c(10,8,1), Attr2 = c(10,9,2))

Iя уже пытался использовать метод t (), но эта ошибка всегда существует: столбец d должен быть атомом 1d или списком

как я могу выполнить операцию поворота на фрейме данных?Спасибо за любую помощь!С уважением

1 Ответ

0 голосов
/ 12 мая 2018

Вам нужно сначала перенести его, а затем выполнить следующие шаги

library(tibble)

df <- data.frame(t(d), stringsAsFactors = F)
colnames(df) <- df[1, ]                #assign 1st row to column name
df <- df[-1, ]
df <- rownames_to_column(df, "name")  #assign row name to a new column

дает

> df
  name Att1 Att2
1    b   12   10
2    c    8    9
3    d    1    2

Пример данных:

d <- structure(list(A = structure(1:2, .Label = c("Att1", "Att2"), class = "factor"), 
    b = c(12, 10), c = c(8, 9), d = c(1, 2)), class = "data.frame", row.names = c(NA, 
-2L))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...