python - Trouver la matrice de probabilité de transition de l'état de la chaîne de Markov
習慣沉默
習慣沉默 2017-05-18 10:57:34
0
1
1692

Une série chronologique est la suivante :

0.19
0.19
0.13
0.01
-0.03
-0.03
0.03
0.09
-0.13
-0.13
0.05
-0.03
0.03
0.09
-0.07
0.11
0.05
0.01
-0.05
-0.01
0.07
0.01
-0.15
-0.01
······

Cette série chronologique a un total de 4032 valeurs. L'espace de valeurs de ces valeurs a 115 façons a=[-0.49,-0.47,-0.45······1.75,1.77,1.79]. trouvez cette matrice de probabilité de transition d'état 115 * 115, j'ai écrit un programme matlab mais il y a un problème avec le calcul, je voudrais demander aux experts ce qu'il faut faire si j'utilise Python. En tant que débutant, je ne sais que l'utiliser. déclarations pour l'implémenter, mais dans ce cas, je dois écrire 115 déclarations if. Comment puis-je le faire de manière plus concise ? Merci à tous ?

習慣沉默
習慣沉默

répondre à tous(1)
漂亮男人

Je ne sais pas comment la chaîne de Markov est calculée. Je suppose qu'il s'agit d'un transfert d'état. Voyons si ce qui suit est utile.

a = [1,2,3,0,0,0,3,3,2,3,3,2,3,2,1,2,3]


l = 4
N = [[0] * l for i in range(l)]

amount = 0
for i in data:
    print i
    amount += 1
    N[i[0]][i[1]] += 1

print amount
for i in range(l):
    for j in range(l):
        N[i][j] /= float(amount)
print N
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal