如何从 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 中执行其他常见任务:

如何删除R中的重复行
R中如何删除多行
如何计算R中的行数

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注