math.net 拟合
参考:http://blog.csdn.net/ztmsimon/article/details/50524392
在论坛中总看到有人在说Math.NET Iridium,查了一下,现在被整合到MathNet.Numerics这个库中来了。
但是好像对于MathNet.Numerics这个库的相关资料比较少。我
大概看了一下,MathNet.Numerics这个库太博大精深了,就举线性拟合的例子来说明一下这个库。
1、引用库:
在http://numerics.mathdotnet.com/这个网址中,我没看到怎么直接下载这个库的地方,但是有Nuget/GitHub。
但是GitHub好像是这个项目的源代码,不是库,没怎么具体看。就转到Nuget上下载了。
安装Nuget在https://dist.nuget.org/index.html这个页面--DOWNLOADS里面就有。并且在VS2013好像是集成Nuget的,不用安装。
在VS2013中--工具--Nuget包管理器--程序包管理器控制台--输入"Install-Package MathNet.Numerics"。等待安装完成即可。
完成后,程序的文件夹中会多一个packages文件夹,程序中也自动引用了MathNet.Numerics,这个时候就能使用了。
2、拟合直线:
Tuple<double, double> s = new Tuple<double, double>(0, 0);
s = Fit.Line(X, Y);
这个就很好理解了:double[] X = new double[i];为x轴的数组,double[] Y = new double[i];为y轴的数组,s为拟合出来直线参数,s.Item2为斜率k,s.Item1为斜率b。
(公式为y=s.Item2*x+s.Item1)
3、拟合曲线:
double[] res = Fit.Polynomial(X, Y, m);
其中:与直线拟合一样,X为x轴的数组,Y为y轴数组,m为次方数。
比如平时我们使用较多的4次方,m就输入4,公式为:y=res[4]*x^4+res[3]*x^3+res[2]*x^2+res[1]*x+res[0]
4、计算曲线拟合出来的R^2
虽然不太理解R^2是什么意思,但是使用EXCEL拟合的时候,都会有这个值,并且这个值越接近1,说明拟合出来的曲线跟原曲线就越接近。
RSquared=GoodnessOfFit.RSquared(Y, Ytest);
这个命令就是计算R^2,其中Y为原始的Y点,Ytest是使用拟合出来的线计算的Y点,相当于原始线与拟合线做比较。
本人对MathNet.Numerics理解也不深,也是才开始使用。后续如有再遇到其他的问题的时候再记录。
c#代码三次样条插值。
http://blog.csdn.net/panjinliang066333/article/details/56682829
c# 二元多次函数拟合:
http://blog.sina.com.cn/s/blog_6e51df7f0100thie.html
math.net 拟合的更多相关文章
- [CC]平面拟合
常见的平面拟合方法一般是最小二乘法.当误差服从正态分布时,最小二乘方法的拟合效果还是很好的,可以转化成PCA问题. 当观测值的误差大于2倍中误差时,认为误差较大.采用最小二乘拟合时精度降低,不够稳健. ...
- 用python的numpy作线性拟合、多项式拟合、对数拟合
转自:http://blog.itpub.net/12199764/viewspace-1743145/ 项目中有涉及趋势预测的工作,整理一下这3种拟合方法:1.线性拟合-使用mathimport m ...
- 最小二乘法拟合java实现源程序(转)
因为我所在的项目要用到最小二乘法拟合,所有我抽时间将C++实现的程序改为JAVA实现,现在贴出来,供大家参考使用./** * <p>函数功能:最小二乘法曲线拟合</p> * @ ...
- 最小二乘法多项式拟合的Java实现
背景 由项目中需要根据一些已有数据学习出一个y=ax+b的一元二项式,给定了x,y的一些样本数据,通过梯度下降或最小二乘法做多项式拟合得到a.b,解决该问题时,首先想到的是通过spark mllib去 ...
- Scipy教程 - 优化和拟合库scipy.optimize
http://blog.csdn.net/pipisorry/article/details/51106570 最优化函数库Optimization 优化是找到最小值或等式的数值解的问题.scipy. ...
- TensorFlow-正弦函数拟合
MNIST的代码还是有点复杂,一大半内容全在搞数据,看了半天全是一滩烂泥.最关键的是最后输出就是一个accuracy,我根本就不关心你准确率是0.98还是0.99好吗?我就想看到我手写一个5,你程序给 ...
- 利用最小二乘法拟合任意次函数曲线(C#)
原文:利用最小二乘法拟合任意次函数曲线(C#) ///<summary> ///用最小二乘法拟合二元多次曲线 ///</summary> ///< ...
- .net core(c#)拟合圆测试
说明 很多时候,我们需要运动物体的转弯半径去描述其机器性能.但在大多数的现实条件下,我们只能够获取到运动物体的 GPS 位置点集,并不能直接得到转弯半径或者圆心位置.为此,我们可以利用拟合圆的方式得到 ...
- 6、基于highcharts实现的线性拟合,计算部分在java中实现,画的是正态概率图
1.坐标点类 package cn.test.domain; public class Point { double x; double y; public Point(){ } public Poi ...
随机推荐
- log4j 产生的日志位置设置和catalina.home、catalina.base
方法一. 解决的办法自然是用相对路径代替绝对路径,其实log4j的FileAppender本身就有这样的机制,如:log4j.appender.logfile.File=${WORKDIR}/logs ...
- GridView创建菜单栏
GridView(网格视图)可以用来做九宫图.表格(行列)的视图,因其是网格状的,不用去调整权重,而且单个item可以自定义,因此也可以用来创建菜单栏(图标加文字形式),布局就一个GridView. ...
- 2017.9.26JQuery源码解析一 架构与依赖
jq1.0: css选择符 事件处理 ajax交互 1.2.3: 引入数据缓存,解决循环引用与大数据保存问题 1.3. : 使用全新的选择器引擎sizzle,在各个浏览器下全面超越其他同类js ...
- 地图调起URI API(通过连接直接调用百度地图)
网站:http://lbsyun.baidu.com/index.php?title=uri/api/web 地图调起URI API 百度地图URI API是为开发者提供直接调起百度地图产品(百度We ...
- python pyMysql 自定义异常 函数重载
# encoding='utf8'# auth:yanxiatingyu#2018.7.24 import pymysql __all__ = ['Mymysql'] class MyExcept(E ...
- svg 配合cesium使用
---恢复内容开始--- 1.svg简介 在 2003 年一月,SVG 1.1 被确立为 W3C 标准. 参与定义 SVG 的组织有:太阳微系统.Adobe.苹果公司.IBM 以及柯达. 与其他图像格 ...
- mysql 5.7.17 建立主从数据库
---恢复内容开始--- 1.确定主/从数据库地址; 2.将主数据库的database dump出来 windows平台用workbench; 其他可以参考: 这位同仁写的比较详细了.我就不谢了.打开 ...
- 11. pt-heartbeat
pt-heartbeat [OPTIONS] [DSN] --update|--monitor|--check|--stop ------------------------------------- ...
- ubuntu12.04下安装Apache+PHP+MySQL
一.Apache1.安装apache2: sudo apt-get install apache2 2.重启apache2: sudo /etc/init.d/apache2 restart 3.在浏 ...
- ubuntu 启动时提示 Failed to load session ubuntu
启动时候提示 Failed to load session ubuntu 通过 CTRL + ALT + [F1~F6] 进入终端界面登陆进系统, 进去之后执行 sudo apt-get instal ...