想象一下,我有一系列4种可能的马尔可夫状态(A,B,C,D):
X = [A, B, B, C, B, A, D, D, A, B, A, D, ....]
Run Code Online (Sandbox Code Playgroud)
如何使用Python生成马尔可夫变换矩阵?矩阵必须是4乘4,表示从每个状态移动到其他3个状态的概率.我一直在网上查看很多例子,但是在所有这些例子中,给出了矩阵,而不是基于数据计算的.我也研究了hmmlearn,但我没有读到如何让它吐出过渡矩阵.有没有我可以用于此目的的图书馆?
这是我在Python中尝试做的确切事情的R代码:https: //stats.stackexchange.com/questions/26722/calculate-transition-matrix-markov-in-r
我有熊猫系列 l=pd.Series([3, 1, 4, 2, [1, 2, 10]])
我需要得到类似的东西:
value count
3 1
1 2
4 1
2 2
10 1
l.value_counts()
Run Code Online (Sandbox Code Playgroud)
给我:
TypeError: unhashable type: 'list'
Run Code Online (Sandbox Code Playgroud)
我什至试图像这样压平列表:
chain = itertools.chain(*l)
print(list(chain))
Run Code Online (Sandbox Code Playgroud)
但它给了我:
TypeError: 'list' object is not callable
Run Code Online (Sandbox Code Playgroud)