我有以下數據集:計數過渡
data <- data.frame(id = 1:7,
t1 = c("AV1", "AV1", "AZ", "AV1", "AV1","AV1","AV2"),
t2 = c("AV2", NA, "AV3", "AV2", "AV2",NA, "AV3"),
t3 = c("AZ", "AV2", "AV4", "AZ", "AZ","AV4","AV4"))
的每一行代表一個單獨的「ID」,與狀態(值)在多個不同的時間步長(列「 T1「 - 」 T3" ):
id t1 t2 t3
1 AV1 AV2 AZ
2 AV1 NA AV2
3 AZ AV3 AV4
4 AV1 AV2 AZ
5 AV1 AV2 AZ
6 AV1 NA AV4
7 AV2 AV3 AV4
我想算不同的轉變,‘從’的值在一個時間步,‘要’在隨後的時間步長值,總結了整個數據集:
from to count
AV1 AV2 4
AV2 AZ 3
AZ AV3 1
AV3 AV4 2
AV1 AV4 1
AV2 AV3 1
因此,「count」表示特定轉換髮生的次數。例如,AV1到AV2發生4次,AV2到AZ 3次。排除NA
。
非常感謝!
@Pr喜時間,感謝您的回覆。但是,我注意到結果中存在更多的關係,例如,AV1> AZ和AV2> AV4不直接存在,而是間接存在。 –
@MohammadZahrawy'df'擁有你期待的所有關係。 BTW Sotos的答案很棒,可以在任意數量的列上覆制。 – Prem