計算方法
傳入乙個詞的list,其實mtld就是計算詞串的長度,有個要求,詞串的長度小於10他的數值就會失效,還有github上邊有另外一種說法就是總詞數不能小於50,我們用的後面那種。傳進來後,挨個詞進行ttr計算,就是比如說第乙個詞,詞數是1,唯一詞數也是1,那麼我們ttr就是1,然後判斷1>0.72,所以繼續看下乙個詞,如果下乙個詞和第乙個一樣,那麼詞數是2,唯一詞是1,ttr = 0.5<0.72,在這裡斷開,前面兩個詞就是乙個詞串,乙個詞串factors+1
最後有乙個詞叫做ifs下面有演算法,得出最後乙個ttr然後計算ifs,然後factors總數+ifs=最終ifs,然後正向的mtld = 總詞數/最終ifs,然後在反向求一次求平均
python**實現:
def mtld(self,tokens):
# 判斷list要夠長,否則當前ttr的值沒有效果
if len(tokens) < 50:
return -1
# 先得到乙個type的list
types =
factors = 0.0
now_ttr = 1.0
ttr_standard = 0.72
tokens_number = 0
types_number = 0
for gram in tokens:
gram = gram.lower()
tokens_number+=1
if gram not in types:
types_number+=1
now_ttr = types_number*1.0/tokens_number
if now_ttr < ttr_standard:
factors+=1.0
now_ttr = 1.0
tokens_number = 0
types_number = 0
types =
rs = now_ttr
# print now_ttr
ifs = (1-rs)*1.0/0.28
ifs+=factors
if ifs != 0:
return len(tokens)/ifs
IOPS計算方法
通常當資料庫管理員提出需要更多儲存空間的時候,他們還會指定必須要達到多少iops。現在有這樣乙個需求,20tb儲存空間同時滿足4500 iops raid 5,我應該如何計算?raid 5或者raid 1 0的時候分別需要多少塊硬碟?首先需要知道i o中讀操作 read 與寫操作 write 所佔的...
RMS計算方法
先提乙個問題 使用訊號發生器輸出同乙個脈衝方波訊號,在示波器上採用直流耦合方式和交流耦合方式,在示波器上得出的rms值是不一樣的,存在很大的差異,為何?原因是直流耦合在取樣時以地作為平面採用波形,並帶有一定的直流成分,而交流則已波形的中心水平線作為平面取波形的絕對值採集計算,數值是不一樣的,兩者之間...
子網計算方法
問題 把192.168.253.0 28劃分多個子網,請列出所有的可用子網段和對應主機範圍?解 1 計算子網 掩碼為28個1,即11111111.11111111.11111111.11110000,點分十進位制表示為255.255.255.240,掩碼1對應的ip為網路位,掩碼0對應的ip為主機位...