Как извлечь строки из фрейма данных в r (5 примеров)


Существует пять распространенных способов извлечения строк из фрейма данных в R:

Способ 1: извлечь строку по позиции

 #extract row 2
df[2, ]

Способ 2: извлечь несколько строк по положению

 #extract rows 2, 4, and 5
df[c(2, 4, 5), ]

Способ 3: извлечь диапазон строк

 #extract rows in range of 1 to 3
df[1:3, ]

Способ 4. Извлечение строк на основе условия

 #extract rows where value in column1 is greater than 10
df[df$column1 > 10 , ]

Метод 5: извлечение строк на основе нескольких условий

 #extract rows where column1 > 10 and column2 > 5
df[df$column1 > 10 & df$column2 > 5 , ]

#extract rows where column1 > 10 or column2 > 5
df[df$column1 > 10 | df$column2 > 5 , ]

В следующих примерах показано, как использовать каждый метод со следующим фреймом данных:

 #create data frame
df <- data. frame (team=c('A', 'B', 'C', 'D', 'E'),
                 points=c(99, 90, 86, 88, 95),
                 assists=c(33, 28, 31, 39, 34),
                 rebounds=c(30, 28, 24, 24, 28))

#view data frame
df

  team points assists rebounds
1 A 99 33 30
2 B 90 28 28
3 C 86 31 24
4 D 88 39 24
5 E 95 34 28

Пример 1: Извлечение строки по позиции

Следующий код показывает, как извлечь из фрейма данных только строку 2:

 #extract row 2
df[2, ]

  team points assists rebounds
2 B 90 28 28

Пример 2. Извлечение нескольких строк по позиции

Следующий код показывает, как извлечь строки 2, 4 и 5 из фрейма данных:

 #extract rows 2, 4, and 5
df[c(2, 4, 5), ]

  team points assists rebounds
2 B 90 28 28
4 D 88 39 24
5 E 95 34 28

Пример 3. Извлечение диапазона строк

Следующий код показывает, как извлечь строки от 1 до 3:

 #extract rows in range of 1 to 3
df[1:3, ]

  team points assists rebounds
1 A 99 33 30
2 B 90 28 28
3 C 86 31 24

Пример 4. Извлечение строк на основе условия

Следующий код показывает, как извлечь строки, значение которых в столбце точек превышает 90:

 #extract rows where value in points column is greater than 90
df[df$points > 90 , ]

  team points assists rebounds
1 A 99 33 30
5 E 95 34 28

Пример 5. Извлечение строк на основе нескольких условий

Следующий код показывает, как извлечь строки, значение которых в столбце точек превышает 90:

 #extract rows where points is greater than 90 and assists is greater than 33
df[df$points > 90 & df$assists > 33 , ]

  team points assists rebounds
5 E 95 34 28

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные задачи в R:

Как удалить повторяющиеся строки в R
Как удалить несколько строк в R
Как посчитать количество строк в R

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *