如何在 R 中创建一行,每个行元素等于其列中的值数?

How do I create a row in R with each row element equal to the number of values in its column?

我正在考虑使用以下两个概念: 1. 绑定 2. SQL

中的 COUNT 之类的东西

假设 table X:

[A · B  · C ]
[1 · 2  · 3 ]
[3 · NA · 4 ]
[6 · NA · NA]

添加新行后,我的新 table X(1) 将如下所示:

[A · B  · C ]
[1 · 2  · 3 ]
[3 · NA · 4 ]
[6 · NA · NA]
[3 · 1  · 2 ]

其中[3 · 1 · 2] 表示它上面的元素个数。

您可以结合使用非 NA 值的 rbind 和 rowSums。见下文。

也供将来参考,如果您以更容易重现的格式提供数据,那将更有帮助。例如,我如何在下面或对于更复杂的数据,您可以 运行 dput(X) 和 post 返回的输出

X <- data.frame(A = c(1,3,6), B = c(2,NA,NA), C = c(3,4,NA))

rbind(X, rowSums(!is.na(X)))
#>   A  B  C
#> 1 1  2  3
#> 2 3 NA  4
#> 3 6 NA NA
#> 4 3  2  1

reprex package (v0.3.0)

于 2020-03-24 创建