If this tool helped you, you can buy us a coffee ☕
计算一组正数的调和平均数,适用于平均速度、平均汇率等场景。
Separate numbers by commas, spaces, newlines, or semicolons. All values must be greater than 0.
Please enter a set of numbers greater than 0 to calculate the harmonic mean.
我们什么时候会用到调和平均数?最常见的是计算平均速度:假设你骑自行车去程速度 20 km/h,回程速度 30 km/h,两段路程相等,用算术平均得 25 km/h,但实际平均速度只有 24 km/h(因为用时不同)。调和平均数就是 24 km/h,更准确。
另一个场景是平均汇率:你分多次用人民币换美元,每次金额相同,最后算平均汇率时用调和平均。
还有平均投资回报率:如果每年投入本金相同,但收益率不同,算总收益率时调和平均数能正确反映。
调和平均数(Harmonic Mean)是对一组正数的倒数取算术平均后再取倒数。简单说就是“各数值倒数的平均值再倒过来”。它常用于处理单位相同但比例关系不同的数据,特别是当数据是“比率”或“速率”时。比如速度、单价、利率等。它的值总是小于等于算术平均数,且对极端小值非常敏感(越小越拉低整体)。
公式很简单:
调和平均数 = n / (1/x₁ + 1/x₂ + ... + 1/xₙ)
其中 n 是数值个数,x₁、x₂...xₙ 是每个正数。为什么这样算?因为当每个数据对应的“总量”相同时(例如距离相同、金额相同),我们需要用倒数来平均。数学直觉:每个数值代表“效率”(如速度 = 距离/时间),总效率等于总距离除以总时间,对效率取倒数再平均正好得到平均时间,然后倒数回来就是平均效率。
1. 打开我们的调和平均数计算器,你会看到“数据输入”区域。
2. 在第一个输入框输入一个正数(例如 20),点击旁边的“添加”或按回车键添加下一个。
3. 依次输入所有正数(如 20、30、40)。工具会显示已添加的数字列表。
4. 如果需要删除某个数字,点击该数字后面的“×”按钮。
5. 输入完毕后,工具自动计算出调和平均数并显示在结果区域,同时可能显示算术平均数和几何平均数供对比。
6. 你也可以点击“清空”重新开始。
算例:一次骑行,去程速度 30 km/h,回程速度 40 km/h,距离相同。求平均速度。
在这个工具里:
- 添加数字 30 和 40。
- 计算器自动算出:调和平均数 = 2 / (1/30 + 1/40) = 2 / (0.03333 + 0.025) = 2 / 0.05833 ≈ 34.29 km/h。
- 对比算术平均数:(30+40)/2 = 35 km/h。
正确结果应该是 34.29 km/h,因为去程时间更长(速度慢),所以平均速度靠近较低值。
解读:如果你用算术平均数 35 km/h,会高估 0.7 km/h,对于长距离骑行影响不小。
对照例 1(包含小值):数据:10、100、1000。
调和平均数 = 3 / (0.1 + 0.01 + 0.001) = 3 / 0.111 ≈ 27.03。
算术平均数 = 370,几何平均数 ≈ 100。可以看到调和平均结果非常接近最小值 10,说明调和平均对异常小值极其敏感。
对照例 2(两个相等值):数据:50、50。
调和平均数 = 2 / (0.02 + 0.02) = 50,与算术、几何平均一致。当所有数值相等时,三种平均数相等。
Q1: 调和平均数一定比算术平均数小吗?
是的,对于任意一组正数(不全相等),调和平均数 < 几何平均数 < 算术平均数。这是数学定理。
Q2: 调和平均数可以用于负数吗?
不能,负数会使倒数符号混乱,结果失去常规意义。本工具只接受正数。
Q3: 我只有两个数,调和平均和算术平均差别大吗?
当两个数差异大时差别明显,比如 10 和 100,调和平均 18.18,算术平均 55。如果两者接近,差别很小。
Q4: 工具里支持添加多少个数字?
目前没有固定限制,但建议不超过 100 个,太多会影响性能。
Q5: 调和平均数在金融里有什么应用?
用于计算相同金额投资的平均成本(定投),或者相同风险敞口的平均回报率。
Q6: 结果与 Excel 的 HARMEAN 函数一致吗?
是的,本工具使用相同算法(n / sum(1/x)),结果一致。
本工具仅适用于正数集合,不适用于包含零或负数的数据集。对于“总量不同”的速率平均(如不同距离的平均速度),请使用加权调和平均或直接计算总路程/总时间。调和平均数对极端小值非常敏感,请确认数据中没有录入错误。本工具的计算精度基于 JavaScript 浮点数运算,在极端大或极端小的数值下可能存在微小误差。如果你处理的是科学数据,建议使用专业统计软件(如 R、Python)进行对比验证。