Excel如何根据时间段按概率填入随机的日期时间?

场景是电商后台的售出清单,想从[2022.5.1000:00-2022.5.2523:59]随机生成日期和时间,填入单元格.同时,根据电商平台的下单规律,让生成的数据在[... 场景是电商后台的售出清单,想从 [2022.5.10 00:00 - 2022.5.25 23:59] 随机生成日期和时间,填入单元格.同时,根据电商平台的下单规律,让生成的数据在[18:00-23:00]的时间段更多一些,[7:00-17:59]其次,其它时间概率最小.图片是概率均等的日期,这种情况下数据分布太均衡,不符合真实情况提前感谢解答!!! 展开
 我来答
退休画线工
2022-08-05 · 知道合伙人软件行家
退休画线工
知道合伙人软件行家
采纳数:5410 获赞数:27010
1981年毕业于湖南大学,从事化工设计30多年,精于工程设计

向TA提问 私信TA
展开全部

本问题涉及到随机数的概率分布问题,的确如题主所说,Excel的两个随机数函数(rand产生0~1之间的随机,randbetween产生指定数字之间的随机整数)产生的随机数都是均布的的。要产生非均布的随机数,得使用点技巧,本人的方法是,用二次随机的方法,第一次随机数用于指定第2次随机数的范围。看题主的截图,订单没有要求按时间排序,相对来说要简单些,如还要按时间排序,就更复杂些了。如图,比如产生昨天(8月5日)的30个随机订单时间,18-24时按50%,7-18时按30%,其他时间20%(只是大概率,只有数据量极大时才能接近),选择A2:A31,输入公式(当然也可以只在A2中输入再下拉):

=TEXT("2022/8/4"+CHOOSE(LOOKUP(RANDBETWEEN(1,100),{0,50,80},{1,2,3}),RAND()*(24-18)+18,RAND()*(18-7)+7,RAND()*7)/24,"yyyy/m/d hh:mm:ss")

按Ctrl+回车键,完成公式输入。

下面的截图中,增加了B列计算A列的时间段,并插入数据透视表对各个时间的订单数分别统计。

gxxxzwj

2022-08-05 · TA获得超过4149个赞
知道大有可为答主
回答量:3652
采纳率:70%
帮助的人:261万
展开全部
思路:1分钟实际就是1/24/60天。A1单元格输入起始时间,A2单元格可以通过判断A1时间范围选择=A1+RANDBETWEEN(0,3)/24/60或A1+RANDBETWEEN(0,5)/24/60或A1+RANDBETWEEN(0,10)/24/60,
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
猫猫9命
2022-08-05 · TA获得超过198个赞
知道小有建树答主
回答量:1845
采纳率:80%
帮助的人:85万
展开全部
=RANDBETWEEN(DATEVALUE("2022-5-10"),DATEVALUE("2022-5-25"))+RANDBETWEEN(0,59)/1440+(IFS(RAND()>0.5,RANDBETWEEN(18,23),RAND()>0.2,RANDBETWEEN(7,17),TRUE,RANDBETWEEN(0,6))/24

注意单元格格式使用自定义:yyyy/m/d h:mm
概率调整RAND()>0.5,实现,.5是前后对半,之后的再对半(IFS为2019函数,如果老版本使用IF镶套)
注:概率对半,靠随机数因此数据少的时候,可能看不出,RAND()零至一的随机数,概率增大减小靠调整大于多少决定
***********旧版IF镶套公式如下:
=RANDBETWEEN(DATEVALUE("2022-5-10"),DATEVALUE("2022-5-25"))+RANDBETWEEN(0,59)/1440+(IF(RAND()>0.5,RANDBETWEEN(18,23),IF(RAND()>0.2,RANDBETWEEN(7,17),RANDBETWEEN(0,6)))/24
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式