Maison > Questions et réponses > le corps du texte
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 ?
漂亮男人2017-05-18 10:59:34
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