मुझे तुरंत एक "बिल्ट-इन" फ़ंक्शन (जैसे, base
या समान) के बारे में पता नहीं है , लेकिन हम कोड की एक जोड़ी में यह बहुत आसानी से और कुशलता से कर सकते हैं।
यहाँ एक समारोह है कि एक लेता है मैट्रिक्स एक इनपुट के रूप (नहीं एक डेटा फ्रेम) और या तो संक्रमण मायने रखता है (पैदा करता है prob=FALSE
) या, डिफ़ॉल्ट रूप से ( prob=TRUE
), अनुमानित संक्रमण संभावनाओं।
# Function to calculate first-order Markov transition matrix.
# Each *row* corresponds to a single run of the Markov chain
trans.matrix <- function(X, prob=T)
{
tt <- table( c(X[,-ncol(X)]), c(X[,-1]) )
if(prob) tt <- tt / rowSums(tt)
tt
}
यदि आपको इसे एक डेटा फ़्रेम पर कॉल करने की आवश्यकता है तो आप हमेशा कर सकते हैं
trans.matrix(as.matrix(dat))
यदि आप किसी तृतीय-पक्ष पैकेज की तलाश कर रहे हैं, तो Rseek या R खोज साइट अतिरिक्त संसाधन प्रदान कर सकती है।