第一百二十二期:大数据分析:红包先抢好,还是后抢好
本文用matlab程序,模擬微信給10個人發(fā)紅包,設(shè)定次數(shù)1億次,統(tǒng)計每個人搶到的紅包,最佳手氣和最差手氣次數(shù),用以分析紅包是應(yīng)該先搶還是后搶?
作者:景因分析
本文用matlab程序,模擬微信給10個人發(fā)紅包,設(shè)定次數(shù)1億次,統(tǒng)計每個人搶到的紅包,最佳手氣和最差手氣次數(shù),用以分析紅包是應(yīng)該先搶還是后搶?
?
算法解釋
網(wǎng)上有人分析微信紅包用的方法是兩倍均值法,意思即:每個人搶的額度為0.01到總額度除以剩余人數(shù)的兩倍。本文用此方法來判斷,
代碼實現(xiàn)
本次計算,設(shè)定每次發(fā)10個紅包,共100元。首先生成三個矩陣用以存放紅包值、手氣最佳次數(shù)、手氣最差次數(shù)。redluckymoney是我能想到紅包較好的翻譯了
redluckymoney=zeros(100000000,10);%存放每次搶到的紅包值 bestlucky=zeros(1,10);%統(tǒng)計每個人手氣最佳次數(shù) worstlucky=zeros(1,10);%統(tǒng)計每個人手氣最差次數(shù)再進行計算,先進行內(nèi)循環(huán),發(fā)10個紅包,統(tǒng)計手氣最佳和手氣最差,再進行外循環(huán)100000000次。
for n=1:100000000 for i =1:9 redluckymoney(n,i)=rand(1)*((100-sum(redluckymoney(n,:)))/(11-i)*2); end redluckymoney(n,10)=100-sum(redluckymoney(n,:)); [~,maxtemp]=max(redluckymoney(n,:)); %計算手氣最佳次數(shù) bestlucky(1,maxtemp)=bestlucky(1,maxtemp)+1; [~,mintemp]=min(redluckymoney(n,:)); %計算手氣最差次數(shù) worstlucky(1,mintemp)=worstlucky(1,mintemp)+1; end最后是畫圖,單次搶到的錢數(shù),如果你的電腦牛X的話,可以放到外循環(huán)中,展示動態(tài)。但計算速度會大大降低,1億次計算時間會很長long long long……
bar(redluckymoney(n,:),'FaceColor',[0.8 0.1 0],'EdgeColor',[1 1 0],'LineWidth',1.5); ylabel('單次搶到紅包/元','fontsize',14,'color','b','fontweight','bold');xlabel('參與人','fontsize',14,'color','b','fontweight','bold'); title('單次紅包錢數(shù)','fontsize',16,'color','b','fontweight','bold'); bar(sum(redluckymoney_sum),'FaceColor',[0.8 0.1 0],'EdgeColor',[1 1 0],'LineWidth',1.5); ylabel('總共搶到紅包/元','fontsize',14,'color','b','fontweight','bold');xlabel('參與人','fontsize',14,'color','b','fontweight','bold'); title('總紅包錢數(shù)','fontsize',16,'color','b','fontweight','bold'); bar(bestlucky,'FaceColor',[1 1 0],'EdgeColor',[1 0 0],'LineWidth',1.5); ylabel('手氣最佳/次','fontsize',14,'color','b','fontweight','bold');xlabel('參與人','fontsize',14,'color','b','fontweight','bold'); title('手氣最佳次數(shù)','fontsize',16,'color','b','fontweight','bold'); bar(worstlucky,'FaceColor',[0.5 0.5 0.5],'EdgeColor',[0 0 0],'LineWidth',1.5); ylabel('手氣最差/次','fontsize',14,'color','b','fontweight','bold');xlabel('參與人','fontsize',14,'color','b','fontweight','bold'); title('手氣最差次數(shù)','fontsize',16,'color','b','fontweight','bold');統(tǒng)計出來,每個人總搶到的錢數(shù)如下圖,總錢數(shù)基本一致,意味著無論先搶到,還是后搶到,經(jīng)過多次后,搶到的錢是一樣的。
總搶到的錢數(shù)
手氣最佳和手氣最差如下圖:總體來看,最后搶的兩位容易獲得手氣最佳,也容易獲得手氣最次差,更有可能是啥也搶不到……
手氣最佳次數(shù)
手氣最差次數(shù)
總結(jié)
總結(jié)
以上是生活随笔為你收集整理的第一百二十二期:大数据分析:红包先抢好,还是后抢好的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Session管理之超时设置和强制下线
- 下一篇: vista下载_Vista和视图在游戏设