昨天下午三点四十分,我在城南那家「拾光」咖啡馆把一杯美式碰倒了。咖啡顺着桌沿淌下去,滴在旁边一个女孩摊开的笔记本电脑边缘,她第一反应不是躲,而是把屏幕往上一翻——我看见满屏的单元格,密密麻麻的人名,张三、李四、王芳,像一场下不完的雨。
她说她叫林嘉,在社区做问卷统计,手上这份表要两百个虚构样本,用来测试录入流程。她敲了 =RANDBETWEEN(1,1000),又拖了一列 RAND() 去排名字,边敲边说:「反正编号是假的,但每一个假编号背后,今晚都有一条真数据要填。」
我盯着那些名字看了很久。那一刻我忽然明白,我关注的 excel随机生成数据,从来不是那串函数本身,而是「假的如何替真的代班」这件小事。
一、那一百九十八个名字
林嘉的表格后来我们数了一遍,是 198 行。她原话是「凑 200 整」,但复制公式时手滑,少拖了两行。她没改,说少两行正好,反正多出来的也不真实。她把鼠标停在第一行,回头问我:「你说,随机出来的名字,算不算一种诚实的偷懒?」
我没答上来。晚上回家我自己打开 Excel,在 A 列输了一串编号,B 列写 =RAND(),C 列写 =CHOOSE(RANDBETWEEN(1,3),"高中","本科","硕士"),半小时后,一张假的学历表躺在我眼前,安静得像一面湖水。
二、用随机数据填出来的真报表
我认识一个做电商运营的人,叫周明远,去年十二月他拿一张随机生成的订单表去给老板看,用来演示新流程的页面加载速度。三百条订单,金额在 29 到 899 之间跳,收货地址全是「省—市—区」的模板拼出来的。老板看完只说了一句:「这数据看着挺真。」
周明远后来跟我讲,他那天心里又高兴又不是滋味。高兴是演示成了,不是滋味是——真数据反倒没人细看得下去。这句话我记了很久,也顺手把它记进了我关于 三个数组三个号多少钱 那篇旧笔记的页边。
我自己的观点很直接:用随机数据做演示本身没毛病,拿它去冒充真结论才是毛病。这中间隔着的不是技术,是分寸。分寸写不进函数里,只能写在人的手上。
三、那些被随机按住的地方
还记得今年二月,我和做游戏测试的朋友聊过一次,他说测匹配逻辑时用的假数据,会故意把段位和胜率做得“太均匀”,因为真实玩家的分布永远带着毛刺。他说这话时在剥橘子,橘络沾在手指上,他随手往纸巾上一抹:「随机不是乱,是先把乱的样子描出来,再看它哪里不对。」
那份笔记我当时就写在 和平精英3.0透视 的旁边,隔了两行,字有点挤。写下来是因为我觉得这句话说到了根上:随机生成数据的意义,常常不在“生成”,而在“描出”那个毛刺的形状。
后来我把它做成了自己的习惯——每份要交出去的表,先随机填一版,铺满,像画家先刷底色。底色不合手,正稿一定也别扭。这个笨办法,我用了快两年。
四、回到那张一百九十八行的表
林嘉那张表最后交上去了。她把标题行加粗,冻结了首行,编号从 1 排到 198,没有凑整。她说这叫“诚实地留白”。我笑她太文艺,她说你才是。我们俩在咖啡馆里笑了一下,窗外有辆洒水车经过,音乐响得很旧。
这中间她提到过一次社区录入的入口,说像 123hcp.net网页入口 这类页面,最怕的就是验证逻辑和假数据对不上——一行假数据把整个流程卡住,比真数据出错还难查。她说的时候皱着眉,手指在触控板上轻轻点。
我写下这些,是想留个记录。随机生成数据不是冷冰冰的公式堆,它有手感,有温度,有那种把假名字一个个摆进格子里时的安静。