设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 3307|回复: 7
打印 上一主题 下一主题

[模块/函数] “化曲为直”——浅谈插值法在Access里的应用

[复制链接]
跳转到指定楼层
1#
发表于 2015-6-27 15:05:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 roych 于 2015-6-29 17:49 编辑

       昨天看到zzs225在论坛里发帖,说是想做一个任意值的查询(已知间隔半小时的温度(已知字段),如何通过查询获得任意时刻的温度(未知字段))。在为他解决这个问题之前,我们先来看一个有趣的命题:两点之间,曲线最短。
       如果有人告诉你,这是真命题,会不会觉得这个想法很疯狂呢?事实正是如此。很容易举出例子来:
       例如,假定我们需要从广州去北京,那么理论上最短的距离,应该是在地图把这两个地点找出来,连接成一条直线吧?——然而,如果我们用的是地球仪的话,你还会不会说这是一条直线呢?{:soso_e113:}

       这就是鼎鼎有名的非欧几何。现在的问题是,为什么我们一般不会把它当做曲线呢?因为相对于整个地球的周长来说,这一段距离的变化,几乎可以视为直线。这就是我所要说的“化曲为直”。
       同样地,在拥有大量数据的前提下,相对于整体数据的复杂变化,任意两个相邻的数据点之间的变化同样可以视为一个恒定的变化。也就是说,即便整个数据都是复杂变化的,任意两个相邻的点,只要足够它们足够接近,就可以视为线性的恒定变化。于是,插值法由此而生…【此处为Roych杜撰,如有雷同,纯属巧合{:soso_e120:}】

      看到这里,也许大家已经有思路了吧:
  • 把这个任意值在数据表中找出来。
  • 如果在数据表里能找到的话,直接匹配就好了。
  • 如果找不到,就找到与它相差最小的两个值。将这两个数据点视为一段直线,从而求出未知值来。至此,整体问题转化为一个一元一次方程的求解问题。
  • 如果不在范围内,则无法进行插值。——这可以在输入的时候设置数据有效性来限制,详细见附件。
      
       我们知道,Access是没有插值法的。如果需要用插值法,那么只能通过以下方式来求解:
  • 直接插值。

       ——事实上,sxgaobo已经做了一个插值法的例子(见12楼)。他是创建出一个包含插值点的临时表来完成这个工作的。缺点:需要高精度数据(例如,精确到秒)时,不得不插入过多的数据而可能会影响运行速度。
  • Excel公式。利用Trend函数来求值。创建Excel组件,把数据复制上去,利用公式来完成。要求:对Excel组件比较熟悉,编程娴熟。
  • 纯数学方法。
    ——标准做法:最小二乘法。先求出拟合线性回归方程的一次系数与常数系数,再代入线性方程求解。问题是:你的数学那么好,你家人造吗?{:soso_e151:}
    ——便捷做法:直线函数法。解析几何学好了吗?一元一次方程学好了吗?{:soso_e144:}
      


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

本帖被以下淘专辑推荐:

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖1 订阅订阅

点击这里给我发消息

2#
发表于 2015-6-27 15:08:51 | 只看该作者
谢谢分享!
回复

使用道具 举报

3#
 楼主| 发表于 2015-6-27 15:14:35 | 只看该作者
站长秒得太快了{:soso_e144:}
4#
发表于 2015-6-27 16:15:37 | 只看该作者
有文化就是不一样,法多.{:soso_e120:}
5#
发表于 2015-6-28 15:32:31 | 只看该作者
{:soso_e179:}{:soso_e179:}{:soso_e179:}

点击这里给我发消息

6#
发表于 2015-6-28 17:24:02 | 只看该作者
{:soso_e179:}{:soso_e179:}{:soso_e179:}{:soso_e179:}

点击这里给我发消息

7#
发表于 2015-6-28 18:46:48 | 只看该作者
谢谢分享{:soso_e179:}

点击这里给我发消息

8#
发表于 2018-10-24 16:25:10 | 只看该作者
学习学习
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-5-8 05:26 , Processed in 0.099954 second(s), 33 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表