Web Tidy
博客

比较 Instagram Followers 与 Following:集合、比率与公式

把 Instagram Followers 和 Following 建模为两个集合,计算互关与单向关系,并在 Google Sheets 中复核结果。

2026年8月30日Instagram
本文目录

Instagram Followers 与 Following 的方向相反。Followers 是关注该主页的账号,Following 是该主页关注的账号;两者并不自动互为关注。

设:

  • F = 当前 Followers 文件中观察到的唯一账号集合;
  • G = 当前 Following 文件中观察到的唯一账号集合。

完整的当前关系模型为:

互关 = F ∩ G
仅关注你 = F − G
你单向关注 = G − F
所有不同关系账号 = F ∪ G
所有单向关系 = (F − G) ∪ (G − F)

本文是一份公式与验算参考。如果你只想按步骤找出没有回关你的账号,请阅读谁没有在 Instagram 上回关我

四种关系类别

类别集合公式含义
互关F ∩ G该账号关注你,你也关注它
仅关注你F − G该账号关注你,但你没有关注它
你单向关注G − F你关注它,但当前 Followers 文件中没有它
所有单向关系(F − G) ∪ (G − F)只在一个方向中观察到的账号

“你单向关注”是一种当前关系,不是历史取关的证据。历史变化需要较早和较新的 Followers 快照。

为什么两个总数还不够

只知道 |F||G|,无法推导互关数量。两个主页都可能有 1,000 Followers 和 800 Following,但交集大小完全不同。

总数差是有用的算术结果,但它无法识别具体关系类别:

总数差 = |F| − |G|

不要把这个差值称为非互关人数。

必须成立的数量恒等式

定义:

  • M = |F ∩ G|——互关数量;
  • FO = |F − G|——仅关注你的数量;
  • GO = |G − F|——你单向关注的数量;
  • U = |F ∪ G|——并集数量。

结果应满足:

|F| = M + FO
|G| = M + GO
U = M + FO + GO
单向关系数 = FO + GO

如果这些等式无法配平,请检查重复项、空白行、混用的身份键和错误的区域引用。

5 个常用比率

这里用 card(F)card(G) 表示集合 FG 中唯一账号的数量。

指标公式能说明什么不能证明什么
Followers/Following ratiocard(F) / card(G)两个总数的相对大小互关数量、关系质量或算法偏好
Follow-back coverageM / card(G)你关注的账号中有多少也关注你谁最近取关或为什么取关
Followers 互关占比M / card(F)Followers 中有多少也被你关注参与度、价值或转化
Jaccard overlapM / U交集相对于并集的占比现实中的亲密程度
总数差card(F) − card(G)两个总数差的方向和大小差值背后具体是哪些账号

分母为 0 时,应把比率标记为不适用,不要输出无穷或人为填成 0%。

用一组虚构 ID 验算

以下 ID 均为虚构:

F = {101, 102, 103, 104}
G = {102, 103, 105}

计算结果为:

  • 互关:{102, 103}M = 2
  • 仅关注你:{101, 104}FO = 2
  • 你单向关注:{105}GO = 1
  • 并集:U = 5
  • Followers/Following ratio:4/3 = 1.33
  • Follow-back coverage:2/3 = 66.7%
  • Followers 互关占比:2/4 = 50%
  • Jaccard overlap:2/5 = 40%

这些数值只描述上述虚构集合,不是 Instagram 基准,也不是产品测试结果。

Google Sheets 公式

假设 Followers!A2:AFollowing!A2:A 存放已经去重的 account ID。Google 将 COUNTIF 定义为条件计数函数,将 FILTER 定义为返回满足指定条件的行。

互关

=FILTER(Followers!A2:A, Followers!A2:A<>"", COUNTIF(Following!A2:A, Followers!A2:A)>0)

仅关注你

=FILTER(Followers!A2:A, Followers!A2:A<>"", COUNTIF(Following!A2:A, Followers!A2:A)=0)

你单向关注

=FILTER(Following!A2:A, Following!A2:A<>"", COUNTIF(Followers!A2:A, Following!A2:A)=0)

COUNTIF 不区分大小写,这有助于处理用户名大小写变化,但无法解决改名、删除、停用或错误归一化规则。没有任何行符合条件时,FILTER 会返回 #N/A;可以用 IFNA 包裹一个有效的空结果,但应先确认错误不是由范围不对齐造成。

构建可比较的源集合

Instagram Follower Exporter 每次只运行一个 Audience。构建 FG 时:

  1. 使用相同来源主页和相近的采集时间窗口。
  2. 分别运行 Followers 与 Following。
  3. 两次都使用相同的 100、200、500 或 1,000 行上限。
  4. 保持相同的默认 account ID 去重行为。
  5. 记录每个任务的终态和确认行数。

14 个输出字段为 idpkusernameprofileUrlfullNameprofilePicUrlisVerifiedfollowedByViewerrequestedByVieweraudiencesourceProfilesourceProfileUrlcollectedAtrowIndex

优先使用 id 作为比较键;只有缺少稳定 ID 时,才回退到归一化后的 username。不要比较 fullName、头像 URL 或 rowIndex:显示名可以重复、图片会变化,行号也只是文件中的位置。

验证清单

  • 两份文件描述同一个 sourceProfilesourceProfileUrl
  • 一份为 Followers,另一份为 Following。
  • 行数上限和去重设置一致。
  • 两次采集时间足够接近,符合当前问题的要求。
  • 记录终态和确认行数;不得把 partial 改写成完整结果。
  • 所有数量恒等式都能配平。
  • 人工抽查每个关系类别中的重要行。
  • 原始文件保持不变,公式只放在工作副本中。

限制

Web Tidy 每次最多确认 1,000 行。对更大的账号,这些比率描述的是两个有边界的观察集合,而不是完整社交关系图。login、challenge、rate limit、private/unavailable 目标或 lost context 会停止采集;瞬态错误和 HTTP 5xx 响应最多重试 3 次。

所选任务显示 completed,并不保证覆盖主页显示的总数。当前集合不包含历史事件时间或发生原因。这些比率也不能证明参与度、触达、账号质量、收入或联系他人的许可。

产品不输出 JSON,不定时监控,不丰富邮箱或电话,不同步 CRM,不自动关注、取关或发消息,也不绕过私密主页和访问控制。

常见问题

Followers 多于 Following,是否意味着互关更多?

不是。互关数量是交集 |F ∩ G|,不能从两个总数单独推导。

Followers-to-Following ratio 是什么?

它是 |F| / |G|,只比较两个总数的大小,并不是 Instagram 官方的账号健康评分。

哪个比率最适合描述互惠关系?

M/|G| 表示 Following 中有多少回关,M/|F| 表示 Followers 中有多少也被你关注,M/U 则表示交集相对于所有不同账号的占比。使用时应明确分母。

可以用用户名而不是 ID 比较吗?

只能作为回退方案。account ID 更稳定,用户名可能改变。

这些公式能找出最近取关的人吗?

不能。这个问题需要比较较早和较新的 Followers 文件。

相关指南