使用 Python 的 curve_fit 函数拟合自定义函数 - 示例代码及解释

本示例代码演示如何使用 Python 的 scipy.optimize.curve_fit 函数拟合自定义函数。

import pandas as pd
import numpy as np
from scipy.optimize import curve_fit

# 定义拟合函数
def func(b, a):
    return 1 - a/b

# 已知的n和b的值
data=pd.read_excel('data3平均.xlsx')
data
n = data[ '孔隙率']
b = data['厚度']

# 将数据转换为NumPy数组
n_values = np.array(n)
b_values = np.array(b)

# 使用curve_fit拟合函数
popt, pcov = curve_fit(func, b_values, n_values)

# 输出拟合参数a的值
a = popt[0]
print('拟合参数a的值:', a)

代码解释:

  • 第1-3行: 导入所需的库,包括 pandas 用于读取 Excel 文件,numpy 用于数组操作,scipy.optimize.curve_fit 用于拟合函数。
  • 第4-5行: 定义拟合函数 func,该函数接受两个参数 ba,并返回 1 - a/b
  • 第7-8行: 从 Excel 文件 data3平均.xlsx 中读取数据,并存储在 data 变量中。nb 分别代表孔隙率和厚度数据。
  • 第10-11行:nb 数据转换为 NumPy 数组,以便用于 curve_fit 函数。
  • 第14行: 使用 curve_fit 函数拟合 func 函数到数据中,并返回拟合参数的值 popt 和协方差矩阵 pcov
  • 第17行: 输出拟合参数 a 的值,即 popt 数组的第一个元素。
  • 第18行: 结束代码执行。

总结:

本示例代码展示了如何使用 Python 的 curve_fit 函数拟合自定义函数。通过定义拟合函数,加载数据,并使用 curve_fit 函数进行拟合,我们可以获得拟合参数的值,并进一步分析数据。

Python 使用 curve_fit 拟合函数 - 示例代码及解释

原文地址: https://www.cveoy.top/t/topic/fOpv 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录