标签: curve-fitting

如何在Python中进行指数和对数曲线拟合?我发现只有多项式拟合

我有一组数据,我想比较哪条线最好地描述它(不同顺序的多项式,指数或对数).

我使用Python和Numpy,对于多项式拟合,有一个函数polyfit().但我没有发现指数和对数拟合的这些函数.

有吗?或者如何解决呢?

python numpy curve-fitting scipy linear-regression

129
推荐指数
6
解决办法
19万
查看次数

将密度曲线拟合到R中的直方图

R中是否有适合直方图曲线的函数?

假设您有以下直方图

hist(c(rep(65, times=5), rep(25, times=5), rep(35, times=10), rep(45, times=4)))
Run Code Online (Sandbox Code Playgroud)

它看起来很正常,但它是偏斜的.我想要拟合一条倾斜的正常曲线来包裹这个直方图.

这个问题相当基本,但我似乎无法在互联网上找到R的答案.

r histogram curve-fitting r-faq

85
推荐指数
4
解决办法
24万
查看次数

如何使用Python和Numpy计算r平方?

我正在使用Python和Numpy来计算任意度数的最佳拟合多项式.我传递了一个x值,y值和我想要拟合的多项式的程度列表(线性,二次等).

这很有用,但我也想计算r(相关系数)和r平方(确定系数).我将我的结果与Excel的最佳拟合趋势线能力以及它计算的r平方值进行比较.使用这个,我知道我正在为线性最佳拟合(度等于1)正确计算r平方.但是,我的函数不适用于度数大于1的多项式.

Excel可以做到这一点.如何使用Numpy计算高阶多项式的r平方?

这是我的功能:

import numpy

# Polynomial Regression
def polyfit(x, y, degree):
    results = {}

    coeffs = numpy.polyfit(x, y, degree)
     # Polynomial Coefficients
    results['polynomial'] = coeffs.tolist()

    correlation = numpy.corrcoef(x, y)[0,1]

     # r
    results['correlation'] = correlation
     # r-squared
    results['determination'] = correlation**2

    return results
Run Code Online (Sandbox Code Playgroud)

python math statistics numpy curve-fitting

83
推荐指数
9
解决办法
16万
查看次数

将多项式模型拟合为R中的数据

我已经阅读了这个问题的答案并且它们非常有用,但我需要特别是在R中提供帮助.

我在R中有一个示例数据集,如下所示:

x <- c(32,64,96,118,126,144,152.5,158)  
y <- c(99.5,104.8,108.5,100,86,64,35.3,15)
Run Code Online (Sandbox Code Playgroud)

我想为这些数据拟合一个模型y = f(x).我希望它是一个三阶多项式模型.

我怎么能在R?

另外,R可以帮我找到最合适的模型吗?

r curve-fitting data-analysis polynomial-math

80
推荐指数
4
解决办法
13万
查看次数

如何在R中为我的数据拟合平滑曲线?

我试图绘制一条平滑的曲线R.我有以下简单的玩具数据:

> x
 [1]  1  2  3  4  5  6  7  8  9 10
> y
 [1]  2  4  6  8  7 12 14 16 18 20
Run Code Online (Sandbox Code Playgroud)

现在,当我使用标准命令绘制它时,它看起来很崎岖和前卫,当然:

> plot(x,y, type='l', lwd=2, col='red')
Run Code Online (Sandbox Code Playgroud)

如何使曲线平滑,以便使用估计值对3条边进行舍入?我知道有很多方法可以拟合平滑曲线,但我不确定哪种方法最适合这种类型的曲线以及如何编写它R.

plot r curve-fitting

78
推荐指数
7
解决办法
22万
查看次数

使用matplotlib/numpy进行线性回归

我试图产生对我已经产生了散点图的线性回归,但是我的数据是在列表格式,所有的例子我能找到使用的polyfit要求使用arange.arange虽然不接受名单.我已经搜索了如何将列表转换为数组的高低,似乎没有什么是清楚的.我错过了什么吗?

接下来,我如何才能最好地使用整数列表作为输入polyfit

这是我遵循的polyfit示例:

from pylab import * 

x = arange(data) 
y = arange(data) 

m,b = polyfit(x, y, 1) 

plot(x, y, 'yo', x, m*x+b, '--k') 
show() 
Run Code Online (Sandbox Code Playgroud)

python numpy matplotlib curve-fitting linear-regression

75
推荐指数
5
解决办法
21万
查看次数

Android如何用手指画出流畅的线条

http://marakana.com/tutorials/android/2d-graphics-example.html

我在下面使用这个例子.但当我在屏幕上移动我的手指太快时,线条会变成单个点.

我不确定我是否可以加快绘图速度.或者我应该用直线连接最后两个点.这两个解决方案中的第二个似乎是一个不错的选择,除非你的手指移动非常快,你将有一条直线的长段然后是尖锐的曲线.

如果有任何其他解决方案,听到它们会很棒.

在此先感谢您的帮助.

java android interpolation curve-fitting touch

67
推荐指数
5
解决办法
9万
查看次数

python numpy/scipy曲线拟合

我有一些观点,我正在尝试适合这一点的曲线.我知道存在scipy.optimize.curve_fit函数,但我不懂文档,即如何使用这个函数.

我的观点: np.array([(1, 1), (2, 4), (3, 1), (9, 3)])

任何人都可以解释如何做到这一点?

python numpy curve-fitting scipy

49
推荐指数
2
解决办法
15万
查看次数

如何在Python中应用分段线性拟合?

我试图将分段线性拟合拟合为数据集,如图1所示

在此输入图像描述

这个数字是通过设置线条获得的.我试图使用代码应用分段线性拟合:

from scipy import optimize
import matplotlib.pyplot as plt
import numpy as np


x = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ,11, 12, 13, 14, 15])
y = np.array([5, 7, 9, 11, 13, 15, 28.92, 42.81, 56.7, 70.59, 84.47, 98.36, 112.25, 126.14, 140.03])


def linear_fit(x, a, b):
    return a * x + b
fit_a, fit_b = optimize.curve_fit(linear_fit, x[0:5], y[0:5])[0]
y_fit = fit_a * x[0:7] + fit_b
fit_a, fit_b = optimize.curve_fit(linear_fit, x[6:14], y[6:14])[0]
y_fit = np.append(y_fit, …
Run Code Online (Sandbox Code Playgroud)

python numpy curve-fitting scipy piecewise

48
推荐指数
6
解决办法
3万
查看次数

用numpy拟合数据

首先让我告诉我得到的可能不是我所期望的,也许你可以在这里帮助我.我有以下数据:

>>> x
array([ 3.08,  3.1 ,  3.12,  3.14,  3.16,  3.18,  3.2 ,  3.22,  3.24,
    3.26,  3.28,  3.3 ,  3.32,  3.34,  3.36,  3.38,  3.4 ,  3.42,
    3.44,  3.46,  3.48,  3.5 ,  3.52,  3.54,  3.56,  3.58,  3.6 ,
    3.62,  3.64,  3.66,  3.68])

>>> y
array([ 0.000857,  0.001182,  0.001619,  0.002113,  0.002702,  0.003351,
    0.004062,  0.004754,  0.00546 ,  0.006183,  0.006816,  0.007362,
    0.007844,  0.008207,  0.008474,  0.008541,  0.008539,  0.008445,
    0.008251,  0.007974,  0.007608,  0.007193,  0.006752,  0.006269,
    0.005799,  0.005302,  0.004822,  0.004339,  0.00391 ,  0.003481,
    0.003095])
Run Code Online (Sandbox Code Playgroud)

现在,我想用4度多项式拟合这些数据.所以我这样做:

>>> coefs …
Run Code Online (Sandbox Code Playgroud)

python regression numpy curve-fitting data-fitting

42
推荐指数
2
解决办法
10万
查看次数