我想将转换矩阵读入 Cytoscape 进行马尔可夫链建模。作为一个例子,我从这篇文章中借用了下面的转换矩阵(包括 R 代码): 创建三态马尔可夫链图
Cytoscape 如何读取这样的内容
transitionMatrix
?
谢谢你。
转移矩阵的格式
这就是过渡矩阵的样子:
tired angry calm
tired 0.5 0.5 0.0
angry 0.0 0.2 0.8
calm 0.8 0.0 0.2
R代码
pre<-cbind(c(rep("tired",100),rep("angry",100),rep("calm",100)))
post<-cbind(c(rep("tired",50),rep("angry",70),rep("calm",100),rep("tired",80)))
df<-cbind(pre,post)
df<-as.data.frame(df)
colnames(df)<-c("pre","post")
states<-c("tired","angry","calm")
probsCase<-function(i,j){
sum(as.character(df$pre)==states[i] &
as.character(df$post)==states[j])/sum(as.character(df$pre)==states[i])
}
transitionMatrix<-outer(1:3,1:3,Vectorize(probsCase))
colnames(transitionMatrix)<-states
rownames(transitionMatrix)<-states
有一个名为 aMatReader 的应用程序,可以让您读取邻接矩阵。