我有几列具有不重叠数据:
a <- c(rep(1, 10), rep(NA, 20))
b <- c(rep(NA, 10), rep(2, 10), rep(NA, 10))
c <- c(rep(NA, 20), rep(3, 10))
data <- cbind(a, b, c)
输出:
a b c
[1,] 1 NA NA
[2,] 1 NA NA
[3,] 1 NA NA
[4,] 1 NA NA
[5,] 1 NA NA
[6,] 1 NA NA
[7,] 1 NA NA
[8,] 1 NA NA
[9,] 1 NA NA
[10,] 1 NA NA
[11,] NA 2 NA
[12,] NA 2 NA
[13,] NA 2 NA
[14,] NA 2 NA
[15,] NA 2 NA
[16,] NA 2 NA
[17,] NA 2 NA
[18,] NA 2 NA
[19,] NA 2 NA
[20,] NA 2 NA
[21,] NA NA 3
[22,] NA NA 3
[23,] NA NA 3
[24,] NA NA 3
[25,] NA NA 3
[26,] NA NA 3
[27,] NA NA 3
[28,] NA NA 3
[29,] NA NA 3
[30,] NA NA 3
使用dplyr
将这N列(多于3列)折叠成一列的方式是什么,所以
result <- c(rep(1, 10), rep(2, 10), rep(3, 10))
当然,在实际数据中,实际数据不是(1, 2, 3)
,而不是NA
。它唯一的共同属性是不是Private Sub tmp10_Click()
y = 1
Dim cCtl As Control
For Each cCtl In begin.Controls
For x = 1 To 67
If cCtl.Name = Cells(x, 1) Then Cells(x, 4) = "true"
Next
y = y + 1
Next
End Sub
。
答案 0 :(得分:3)
在基数R中,
rowSums
rowSums(data, na.rm = TRUE)
max.col
可用于标识具有非NA
值的列 data[cbind(1:NROW(data), max.col(!is.na(data)))]