簡體   English   中英

如何計算字典中值的比率?

[英]How do I calculate a ratio for values within a dictionary?

假設我有這樣一本字典:

d = {1.0: 11, 2.0: 3, 3.0: 7}

我需要計算每個值與后面的值 (k+1) 的比值,然后將計算出的所有比值之和除以計算出的比值個數,在本例中為 2。如果有興趣,這是用於計算一個 '分叉點stream 統計數據中的比率'。

預計 output:

  • r1 = 11/3 = 3.67
  • r2 = 3/7 = 0.43

比率總和 = 3.67 + 0.43 = 4.1 解決方案 = 4.1 / 2 = 2.05

d = {1.0: 11, 2.0: 3, 3.0: 7}

ratio_values = list(d.values())

count = len(ratio_values) - 1
ratio_sum = 0

for i in range(len(ratio_values) - 1):
    #adds the ratio between two consecutive values to the total sum
    ratio_sum += ratio_values[i]/ratio_values[i+1]

print(ratio_sum/count)
import numpy as np

arr = np.array(list(d.values()))
arr

ans = 0
ratios = []
for i in range(1, len(arr)):
    ratios.append(arr[i-1]/arr[i])
ans = sum(ratios)/len(ratios)
d = {1.0: 11, 2.0: 3, 3.0: 7}
d = list(d.values())

ratios = []
solution = 0.0

per = d[0]
for v in d[1:]:
    ratios.append(per/v)
    per = v

solution = sum(ratios)/len(ratios)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM