如何从 r 中的数据框中提取行(5 个示例)
在 R 中从数据框中提取行有五种常见方法:
方法一:按位置提取行
#extract row 2
df[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 中执行其他常见任务: