我有一个表,其中包含一个“总计”行,该行对每列的所有先前行进行求和。我想删除总数小于 10 的每一列。在下面的示例中,这意味着删除 B 列和 C 列。
| ID | A栏 | B栏 | C栏 | D 栏 |
|---|---|---|---|---|
| A | 5 | 1 | 2 | 10 |
| 乙 | 0 | 0 | 3 | 15 |
| C | 7 | 1 | 1 | 22 |
| 全部的 | 12 | 2 | 6 | 47 |
我还没有真正尝试过任何东西,因为我根本不熟悉处理 R 中的特定行。提前感谢您的帮助。
您可以将值高于 10 的select列如下所示:wherelast
library(dplyr)
df %>%
select(where(~ last(.x) > 10))
#> ID A D
#> 1 A 5 10
#> 2 B 0 15
#> 3 C 7 22
#> 4 Total 12 47
Run Code Online (Sandbox Code Playgroud)
创建于 2024-02-19,使用reprex v2.0.2
使用的数据:
df <- read.table(text = "ID A B C D
A 5 1 2 10
B 0 0 3 15
C 7 1 1 22
Total 12 2 6 47
", header = TRUE)
Run Code Online (Sandbox Code Playgroud)