我一直在學習python編程edX這是一個非常好的課程,我至今可以完全推薦。剛剛看過一個關於Statistics的TED演講,我認爲這很棒,這是一種鍛鍊我在真實世界場景中獲得的Python技能的簡單方法。這個人舉了一個例子,說明不斷翻轉一枚硬幣的可能性,並尋找兩個反覆出現的序列,他解釋說,你會認爲他有相同的發生概率,他聲稱事實上沒有。簡單地說,他聲稱序列頭尾巴頭最有可能發生比頭尾尾巴在第一個序列的末尾,你已經有三分之一的重複序列再次在第二個序列的結尾你必須拋棄另一頭再次開始序列。這非常有意義,所以我着手試圖用我在這裏顯示的小型python程序來證明它。使用python分析擲硬幣統計
import random
HTH = 0
HTT = 0
myList = []
i = 0
numberOfTosses = 1000000
while i < numberOfTosses:
myList.append(random.randint(0,1))
i += 1
for i in range (len(myList)):
if i+2 >= len(myList):
break
if myList[i] == 1 and myList[i+1] == 0 and myList[i+2] == 1:
HTH +=1
if myList[i] == 1 and myList[i+1] == 0 and myList[i+2] == 0:
HTT +=1
print 'HTT :' ,numberOfTosses, HTT, numberOfTosses/HTT
print 'HTH :' ,numberOfTosses, HTH, numberOfTosses/HTH
因此,我已多次運行程序,改變最大迭代值高,但似乎無法證明自己的說法,平均的HTH順序應該發生埃維8次投擲和HTT序列每10個,因爲看起來我平均得到平衡的結果。所以我的問題是我在執行這個問題的時候出了什麼問題?
我認爲那傢伙的主張是虛假的,除非他說你更有可能得到HTH少數的折磨。爲了從HTH中獲得更多的勝利,因爲他說,你必須得到比HTTH更多的HTHT。但是如果你應用他的同樣的邏輯,HTTH已經在序列的最後開始了,而你必須從HTHT開始重新開始。 –
@MarkkuK。實際上,當你有HTHT的時候,你已經有了下一個HTHT的前兩個字母。對於HTTH,你只有第一個字母。 –
@MattParker,的確如此,我正在應用這個人說的太狹隘。不過,HTHT vs HTTH的統計數據也大致相同,至少在這裏使用該方法。 –