用Numpy平均直方图

时间:2014-09-30 17:22:15

标签: python numpy histogram

我正在努力解决Python中的统计问题。如果这应该转移到Cross Validated,请告诉我。

我试图制作一些直方图,然后对它们取平均值。现在我觉得这有一些根本性的错误。以下代码确实产生了平均分布:

import numpy.linalg
from igraph import *
import random
import numpy as np

freqs = []
bins = []

for iter in range(100):
    G = Graph.Erdos_Renyi(100, .12, directed=False, loops=False)    
    L = G.laplacian(normalized=True)
    e = numpy.linalg.eigvals(L)
    freqs.append(numpy.histogram(e, bins=50)[0])
    bins.append(numpy.histogram(e, bins=50)[1])

meanFreq = np.mean(freqs,axis = 0)
meanBins = np.mean(bins,axis = 0)

print meanFreq
print meanBins

但是......这是在Python / numpy中平均直方图的正确方法吗?如果没有,有没有更好的方法来做到这一点,也许有预定义的numpy函数?

谢谢!


这是一个包含预先设置垃圾箱的建议的版本,这在统计上是否可以接受?

import numpy.linalg
from igraph import *
import random
import numpy as np

freq = []
b = []

bin = []

for i in range(0,200,2):
    b.append(float(i)/100)

for iter in range(100):
    G = Graph.Erdos_Renyi(100, .12, directed=False, loops=False)    
    L = G.laplacian(normalized=True)
    e = numpy.linalg.eigvals(L)
    freq.append(numpy.histogram(e, bins=b)[0])
    bin.append(numpy.histogram(e, bins=b)[1])

meanFreq = np.mean(freq,axis = 0)
meanBins = np.mean(bin,axis = 0)

print meanFreq
print meanBins

0 个答案:

没有答案