我使用statistics.mean()來計算採樣分佈的均值。但是,在下面的代碼中,下面值的返回值是四捨五入的整數。如果我使用numpy.mean(),將會得到正確的浮點類型結果。那麼這裏發生了什麼?爲什麼python statistics.mean()返回一個int類型,而不是float
import statistics
from scipy import stats
posterior_sample = stats.beta.rvs(3, 19, size = 1000)
predictive_sample = stats.binom.rvs(100, posterior_sample, size = 1000)
print(statistics.mean(predictive_sample))
print(statistics.mean([(data >= 15).astype(int) for data in predictive_sample]))
一個簡單的例子:'statistics.mean([6,7,8,9])'和'statistics.mean(np.array([6,7,8,9]))''。 –