[英]Pearson's correlation in R with one column and undefined number of trials
我有看起來像這樣的數據:
ID Vehicle MPH
001 1 50
001 1 60
001 2 94
001 2 78
001 2 101
001 3 34
002 1 56
002 2 98
002 2 95
002 3 36
002 3 42
我想按車輛類型關聯MPH值,這意味着我會看到三個車輛MPH的相關矩陣。 這可能嗎? 如果是這樣,我將如何在R中進行處理。每個ID或車輛的數據行數不一定相同。 任何意見是極大的贊賞!
數據:
ID <- c(001, 001, 001, 001, 001, 001, 002, 002, 002, 002, 002)
Vehicle <- c(1,1,2,2,2,3,1,2,2,3,3,)
MPH <- c(50, 60, 94,78,101,34,56,98,95,36,42)
df <- data.frame(ID,Vehicle,MPH)
不能完全確定預期的輸出。 根據描述,我們需要對每個“ ID”進行關聯,因此我們acast
“ ID” split
的數據集划分為一個list
,然后在創建序列列(“ Seq”)之后將acast
(從reshape2
)轉換為“ wide”格式通過“ Vehicle”( ave
步驟執行此操作)並應用cor
函數。
library(reshape2)
lapply(split(df[-1], df$ID), function(x) cor(acast(transform(x, Seq =
ave(Vehicle, Vehicle, FUN = seq_along)),
Seq~Vehicle, value.var = "MPH"), use = "pairwise.complete.obs"))
注意:有許多可use
選項,因此最好將其更改為合適的相關選項。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.