我亲手跑了一遍存量统计,兜底类居然排到第二

我亲手跑了一遍存量统计,兜底类居然排到第二

一、一句话结论

我第一次交出去的数是错的。骨架没歪------24,367 条可见条目、15 个分类------但分母、均值排序、other 该怎么读,这三处我全是按直觉处理的。这篇按「我先怎么算的 → 哪里不对劲 → 改成了什么」讲一遍,返工三次,每一次都是自己打自己脸。

二、怎么算的

流程本身很笨:把生产库的一份副本拉到本机,sqlite3 只读打开,跑一条分组查询,导出 CSV,再对着屏幕一格一格核。

项 值
数据源 生产库 dev.db 的 Plugin 表,只读副本
快照时间 2026-11-03 06:03(北京时间)
我的环境 本机 sqlite3 加 python3,没上任何 BI 工具
产出 15 行分类表、一张均值表、一份发同事的截图

第一版连 hidden=0 都没写,就这条:

bash 复制代码
sqlite3 -readonly dev.db "SELECT category, COUNT(*) FROM Plugin GROUP BY 1 ORDER BY 2 DESC;"

跑完看着挺像样,15 行,最大的一行三万多。我当时以为十分钟就完事了。

三、口径边界

有三件事我从一开始就该写在自己脑门上。

第一,条数只说明「收录了多少」,不说明「好不好用」。我最初把条数多直接等同于热门,这是偷懒。

第二,category 是站点自己的单列枚举,不是多标签。一个插件只落一个值,所以一个既能改界面又能记东西的项目,只会在其中一类里出现一次。跨类能力在这张表里根本看不出来。

第三,这是单点快照。我不是在做一个趋势图,只是在一张表上数数,任何「最近在涨」的说法都超出这份数据的范围。

四、完整数据

分类 条目数 占比 原始均值 剔除最大项后均值
ui 3,581 14.70% 90.8 48.6
other 3,395 13.93% 11.5 6.7
market 3,048 12.51% 104.0 85.2
tool 2,661 10.92% 27.1 24.3
chat 1,715 7.04% 54.1 30.0
model 1,520 6.24% 6.2 5.6
dev 1,469 6.03% 39.7 8.9
browser 1,351 5.54% 231.1 33.6
vision 1,350 5.54% 202.9 124.9
skill 1,095 4.49% 38.2 14.7
security 1,016 4.17% 512.2 96.9
platform 766 3.14% 78.7 51.2
desktop 704 2.89% 85.9 36.9
search 639 2.62% 95.1 38.4
ads 57 0.23% 17.0 5.1
合计 24,367 100% 92.1 ---

五、我踩的三个坑

返工一 · 分母里多了一千行

第一版的分母是 25,441,因为我把整张表都数进去了。数据里有一部分条目标了 hidden=1,共 1,074 行,这些在站点上是不展示的。我当时想:「反正分母大一点,比例差不了太多。」

差得了。补上 hidden=0 之后分母变成 24,367,前五类的合计从「六成上下」的模糊印象,落到一个能写进文档的 59.10%。更关键的是态度问题:把看不见的条目算进分母,等于用不存在的供给去解释存在的东西。这一条改完,我重新核了每一行的百分比。

返工二 · 一个项目毁掉整张均值榜

第二版我把星标均值也并进表里,想让结论更丰满一点。跑出来第一眼就看到 security 的 512.2,全场最高。我手都快放到键盘上准备写「安全类最受关注」了。

停下来的原因是这个数高得离谱。我回头查明细:该类里有一个 422,036 星的项目,单它就占了这个分类星标总和的 81.1%。剔掉它,均值从 512.2 掉到 96.9。同样的毛病在 browser 更明显,231.1 掉到 33.6;dev 从 39.7 掉到 8.9。

榜单直接翻过来。按原始均值,vision 202.9 排在 browser 231.1 和 security 512.2 后面;把最大的那个项目剔掉,变成 vision 124.9 高于 security 96.9 高于 browser 33.6。同一批数据,两种口径两个结论。我在笔记里写了一句:均值在长尾数据里不是中心,是最大值的人质。

返工三 · 我把兜底桶当成了功能类

other 3,395 条、13.93%,排第二。

我第一版的备注写的是「杂项需求旺盛,说明用户的长尾需求被低估」。写完自己都觉得飘。后来想明白:other 不是功能分类,是兜底桶------枚举没覆盖到的形态全往这里塞。它排第二,只说明分类体系的边界不够宽,不能说明任何一类需求在涨。

这一条改的是叙述,不是数字。但影响最大:前面两处我改的是分母和排序,这一处改的是我凭什么下结论。

六、局限

我现在能说清的边界就这些:

  • 单列枚举会把多能力插件折叠成一个值,跨类组合看不见;
  • 星标是累计值,「剔除最大单项目」只是最粗的稳健化,我没取中位数,所以那张均值表只能看趋势,不能当分布;
  • 本切面没排除已归档仓库,也没切时间窗口,新收录的和几年前的老项目混在一起;
  • finalScore 我没展开,只在笔记里记了一句:最大 74.4、均值 31.7;
  • 这是一份单时点快照,跨日对比得再取一份。

七、数据复核

复核我做的是笨办法:把五个数写在纸上,一个一个对。

全表 25,441;hidden=1 是 1,074;两者相减 24,367;分组结果正好 15 行;前五类合计 14,400、59.10%。再加一组:L5 合计 2,453、占 10.07%。

五个数里有一个对不上,我就回头重跑那条查询,而不是去调结论。这一步花的时间比写稿多,但值得------如果没有它,前面三次返工我一个都不会发现。

总结

一篇统计稿真正的工作量不在查询,而在三次自我否定:分母要不要剔隐藏、均值能不能直接排序、兜底桶能不能当功能类。三个问题里任何一个答错,结论都会漂。我最后交出去的那版,数字和第一版差得不多,但每一句都能追溯到一条查询。

八、适合与不适合

适合 :准备自己做一次同类统计、想先看看别人会在哪里翻车的人;需要向同事解释「为什么这个比例和你算的不一样」的人;习惯先把口径写在文档开头、再写结论的人。 不适合:只想要一个能直接引用的排名的人,这份数据给不了排名;想用它评估插件质量的人,条数不承载质量信息;需要多标签视图的人,单列枚举做不到。

标签:分类统计、DeepSeek Harness、数据复盘、口径纠偏

本文由我亲手实测整理,数据来源于站点档案库的只读查询。

相关推荐
孟陬1 小时前
Foobar 技术周刊#159:当看不懂代码时,如何高效排障调试。脏页陷阱:一条只读查询,写入数 TB 数据。推测解码:大模型加速利器
前端·人工智能·后端
GoGeekBaird1 小时前
别再给每个 AI 做自我介绍了:我做了一个「个人上下文」管理系统
后端·github·agent
码事漫谈1 小时前
腾讯混元 Hy4 正式版发布了
后端
Mikko71 小时前
Redis 连接数满了服务端有错误信息吗?连接数不增加却命令超时?6.2 实测连接池、超时与大 key 怎么判定
java·spring boot·redis·后端
苍何3 小时前
DeepSeek的Super-agent 设计,和我们的工程实践
后端
Patrick_Wilson3 小时前
第一次读 Go 项目:从两个源码文件弄清 package、import 和 go.mod
后端·go·编程语言
Patrick_Wilson3 小时前
执行 go build . 后,Go 怎样找到代码并生成程序
后端·go·编程语言
用户6919026813393 小时前
Redis 2:Redis 在怎么处理harness记忆
后端
Patrick_Wilson3 小时前
Go 变量不赋值时,为什么也有值
后端·go·编程语言
Patrick_Wilson3 小时前
读 Go 项目里的命令:run、build、test 分别做了什么
后端·go·编程语言