linregconf

Perform linear least squares regression, accounting for uncertainty, using linear algebra methods

https://github.com/sflury/linregconf

Science Score: 67.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 3 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (11.4%) to scientific vocabulary
Last synced: 7 months ago · JSON representation ·

Repository

Perform linear least squares regression, accounting for uncertainty, using linear algebra methods

Basic Info
  • Host: GitHub
  • Owner: sflury
  • License: gpl-3.0
  • Language: Python
  • Default Branch: main
  • Size: 62.5 KB
Statistics
  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 1
Created about 2 years ago · Last pushed 10 months ago
Metadata Files
Readme License Citation

README.md

LinRegConf

Perform linear least squares regression, accounting for uncertainty, using linear algebra methods to minimize the objective function (in this case, $\chi^2$).

When using this code, please cite this repository using the reference provided here by GitHub.

Example

``` python import numpy as np from LinRegConf import LinRegConf

make fake data

np.random.seed(123) n = 10 xdata = np.random.rand(n) ydata = 2x_data+1 + np.random.randn(n)0.1 xerrs = np.max([abs(np.random.randn(n)*0.05),np.zeros(n)+0.05],axis=0) yerrs = np.max([abs(np.random.randn(n)*0.1),np.zeros(n)+0.1],axis=0)

fit plus confidence intervals (supports any polynomial order)

automatically incorportates y errors if given

for now, x errors are only for plotting

fit = LinRegConf(xdata,ydata,xerr=xerrs,yerr=yerrs,n_poly=1,p=0.05)

print best-fit parameters

fit.pprint()

plot fit plus data

fit.plot() a0 x^0 : 1.023 +/- 0.109 a1 x^1 : 2.025 +/- 0.188 ``` image of a linear fit to data with 95% confidence intervals

BibTeX Reference

bibtex @SOFTWARE{Flury_LinRegConf, author = {{Flury}, Sophia R.}, title = "{LinRegConf}", year = 2024, month = jan, version = {1.0.0}, url = {https://github.com/sflury/LinRegConf}, doi = {10.5281/zenodo.15577097} }

DOI

Licensing

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/.

Owner

  • Name: Sophia Flury
  • Login: sflury
  • Kind: user

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
- family-names: "Flury"
  given-names: "Sophia"
  orcid: "https://orcid.org/0000-0002-0159-2613"
title: "LinRegConf"
version: 0.1
doi: 
date-released: 2024-01-04
url: "https://github.com/sflury/LinRegConf"

GitHub Events

Total
  • Release event: 1
  • Push event: 2
Last Year
  • Release event: 1
  • Push event: 2