V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
ccraohng
V2EX  ›  问与答

请教大佬们, 如何通某种方式,是一组数据尽可能收敛于一个值

  •  
  •   ccraohng · 2020-05-20 22:09:24 +08:00 · 1488 次点击
    这是一个创建于 1648 天前的主题,其中的信息可能已经有所发展或是发生改变。

    使用场景: 数据统计显示计算, 以圆的半斤反应数据的差异, 但同时不至于差别太大。

    已知一组确定的数据, 比如 1000,5,40,600,8000 以一个圆代表一组数字, 如何让它们的半径尽可能在一个接近的范围, 比如第一个大约 0.1 左右,第二个大约在 0.05 , 而不是 0.0005 。

    6 条回复    2020-05-21 06:01:17 +08:00
    ciaoly
        1
    ciaoly  
       2020-05-20 22:34:46 +08:00 via Android   ❤️ 1
    也许可以,取对数?🤔
    chocovon
        2
    chocovon  
       2020-05-20 22:36:18 +08:00 via Android   ❤️ 1
    取个对数?
    27
        3
    27  
       2020-05-20 22:48:31 +08:00   ❤️ 1
    取对数不错的,差 100 倍等于半径差 2 倍,还嫌多的话就
    log(log(x))或者 sqrt(log(x))
    27
        4
    27  
       2020-05-20 22:49:36 +08:00
    主要保证在保持单调性的同时减小数量级就可以了
    xml123
        5
    xml123  
       2020-05-21 00:02:25 +08:00   ❤️ 1
    取对数可以的,如果是严格要求将无穷区间映射到有限区间,可以用反正切,任意构造一个有理函数(如 1-1/x)也不是很复杂。
    msg7086
        6
    msg7086  
       2020-05-21 06:01:17 +08:00   ❤️ 1
    Windows 自带的磁盘管理工具默认就是用的对数比例,你把一个 128G 的 SSD 和一个 12T 的硬盘放在一起看,128G 的是 12T 长度的 0.7 倍。当然具体用对数还是用其他映射函数,还是看你的输入数据之间差别有多大。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2804 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 09:48 · PVG 17:48 · LAX 01:48 · JFK 04:48
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.