簡體   English   中英

如何計算R中矩陣中數字的變化?

[英]How to count a change of number in a matrix in R?

我有一個名為'cmat'的矩陣:

> cmat
      [,1]
 [1,]    0
 [2,]    0
 [3,]    0
 [4,]    1
 [5,]    0
 [6,]    1
 [7,]    0
 [8,]    1
 [9,]    0
[10,]    1
[11,]    1
[12,]    1
[13,]    0
[14,]    0
[15,]    1
[16,]    0
[17,]    1
[18,]    0
[19,]    0
[20,]    1
[21,]    0
[22,]    1
[23,]    0

現在,我想要實現的是我想要計算值從之前的值0變為1的次數。如何在R中執行此操作?

如果只有二進制值, sum(diff(cmat)==1)可能是一種方法。

你可以做到

sum( cmat[, 1] == 1 & c(NA, head(cmat[, 1], -1)) == 0 , na.rm = TRUE)

在這里添加一個替代方案。 rle(cmat)將允許您識別值更改的每個位置以及新值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM