呈任意分佈的樣本,進行m次抽樣,每次取n個。這m次抽樣的平均值接近正態分佈。
下面我們驗證一下:
數據:用戶粉絲數
我們有約100w用戶的信息,我們只關注用戶的粉絲數這個字段。毫無疑問用戶的粉絲數都是長尾分佈,如圖:
import pandas as pd
import random
def get_user_sample(data):
sample = []
sample_mean = []
for j in range(0,1000):#1000次取樣
sum = 0
for i in range(0, 30):#每次取30個
r = random.randint(0,data.size)
sample.append(data[r:r+1])#取一條
print('隨機值%d 取值%d'% (r, sample[len(sample)-1].values[0]))
sum = sum+sample[len(sample)-1].values[0]
print(sum/10)
sample_mean.append(sum/10)
return sample_mean
if __name__ == '__main__':
df = pd.read_csv('用戶點贊粉絲數5.csv')
df.info()
df_filter=df[df.fans<500] #篩選
df_filter.info()#查看錶結構
df_fans = df_filter['fans']#只用fans字段
sample = get_user_sample(df_fans)
plt.hist(df_fans, bins=100)#顯示 原來樣本分佈 分成100個桶,這個參數指定bin(箱子)的個數,也就是總共有幾條條狀圖
plt.hist(sample, bins=100)#顯示 採樣分佈
看起來也算是有點像正態分佈吧。實踐一下,加深理解。
參考資料:https://blog.csdn.net/mingyuli/article/details/81141758