Мы можем назначить имена строк фрейма данных, используя оператор <-
с rownames(df)
, как показано ниже:
df<-data.frame(a=letters[1:5], b=1:5, c=LETTERS[1:5])
df
rownames(df) <- df[,1]
df[,1] <- NULL
df
Приведенный выше скрипт преобразует первый столбец в имя строки, выводя, как показано ниже:
df
a b c
1 a 1 A
2 b 2 B
3 c 3 C
4 d 4 D
5 e 5 E
df
b c
a 1 A
b 2 B
c 3 C
d 4 D
e 5 E
Есть ли способ использовать канал %>%
для этого?
Я пробовал df %>% rownames(.) <- .[,1]
, но не удалось.
Основная проблема заключается в том, что нельзя использовать <-
между %>%
column_to_rownames
из пакета tibble - tibble.tidyverse.org /reference/rownames.html - person thelatemail   schedule 07.05.2019%>%
полезен, чтобы избежать вложенности. Он преобразуетfoo(bar(baz(x)))
вx %>% foo %>% bar %>% baz
. В вашем примере вы начинаете сrownames(df) <- df[,1]
, который не имеет вложенности. Вы не можете использовать%>%
в левой части задания. - person Gregor Thomas   schedule 07.05.2019%>%
, я просто предположил, что вы, вероятно, уже используете dplyr + tibble и т. д. - person thelatemail   schedule 07.05.2019