データセットを調べるプログラムを作成したデータポイントのセットがあり、そのセットからnポイントごとに取得し、合計して新しいリストに入れます。これで、単純な棒グラフを作成できます。
ここで、新しいリストの離散平均を計算したいと思います。
私が使用している式は次のとおりです。基本的に、番号が含まれt_av=(1/nsmp) Sum[N_i*t_i,{i,n_l,n_u}]
ているnsmpビンがあり、ビンの時間であり、最初のビンであり、最後のビンです。N_i
t_i
n_l
n_u
したがって、私のリストがこれである場合: [373, 156, 73, 27, 16]
、
5つのビンがあり、次のものがあります:t_av=1/5 (373*1+156*2+73*3+27*4+16*5)=218.4
今、私は問題に遭遇しました。私はこれで試しました:
for i in range(0,len(L)):
sr_vr = L[i]*i
tsr=sr_vr/nsmp
ここで、nsmp は設定できるビンの数で、L
計算済みです。範囲は 0,1,2,3,4から始まるので、最初のビンが 0 で計算されるため、正しい答えは得られませんrange(1,len(L)+1)
。それでもリストの 2 番目 (1) の要素に 1 を掛けると、最後の部分の 1 つのエントリ不足になります。IndexError: list index out of range
L[i]*i
これを修正するにはどうすればよいですか?