Как получить имя строки из номера строки?

#r #rowname

#r #r-имена строк

Вопрос:

Интересно, как я могу извлечь имя строки из номера строки?

 x <- data.frame( A = 1:10, B = 21:30 )
rownames( x ) <- sample( LETTERS, 10 )
> x
   A  B
J  1 21
A  2 22
I  3 23
G  4 24
H  5 25
B  6 26
P  7 27
Z  8 28
O  9 29
R  10 30
> x[ "H",]
  A  B 
H 5 25
  

Я хочу узнать, как называется строка конкретной строки? например, имя строки строки = 3

также какое имя строки содержит значение 30?

Комментарии:

1. или rownames(x[3, ])

2. @DavidArenburg rownames(x)[3] работает должным образом в моем реальном фрейме данных (включает 50 столбцов с именами строк), но rownames(x[3, ]) возвращает NULL !!?? вы почему?

3. Я не могу воспроизвести вашу ошибку, поэтому не могу сказать вам, почему. Если rownames(x)[3] у вас работает, то придерживайтесь этого и не слишком ломайте голову над философскими вопросами

Ответ №1:

 set.seed(42)
x <- data.frame( A = 1:10, B = 21:30 )
rownames( x ) <- sample( LETTERS, 10 )
x
##    A  B
## X  1 21
## Z  2 22
## G  3 23
## T  4 24
## O  5 25
## K  6 26
## V  7 27
## C  8 28
## L  9 29
## R 10 30
rownames(x)[3] #third row name
## [1] "G"
rownames(x)[x$B == 30]
## [1] "R"