From 17044c6fa8545c6649afafce78587126ab389e66 Mon Sep 17 00:00:00 2001 From: BalzaniEdoardo Date: Tue, 7 Nov 2023 14:54:42 -0500 Subject: [PATCH 1/5] converted to nemos --- CONTRIBUTING.md | 2 +- README.md | 2 +- docs/developers_notes/README.md | 6 +++--- docs/developers_notes/basis_module.md | 8 ++++---- docs/examples/plot_1D_basis_function.py | 8 ++++---- docs/examples/plot_ND_basis_function.py | 12 ++++++------ docs/examples/plot_example_convolution.py | 12 ++++++------ docs/index.md | 2 +- mkdocs.yml | 2 +- pyproject.toml | 6 +++--- src/{neurostatslib => nemos}/__init__.py | 0 src/{neurostatslib => nemos}/basis.py | 6 +++--- src/{neurostatslib => nemos}/glm.py | 0 src/{neurostatslib => nemos}/sample_points.py | 0 src/{neurostatslib => nemos}/utils.py | 0 tests/test_basis.py | 2 +- tests/test_convolution_1d.py | 2 +- tests/test_glm_runs.py | 4 ++-- tests/test_glm_synthetic.py | 6 +++--- tests/test_glm_synthetic_single_neuron.py | 6 +++--- 20 files changed, 43 insertions(+), 43 deletions(-) rename src/{neurostatslib => nemos}/__init__.py (100%) rename src/{neurostatslib => nemos}/basis.py (99%) rename src/{neurostatslib => nemos}/glm.py (100%) rename src/{neurostatslib => nemos}/sample_points.py (100%) rename src/{neurostatslib => nemos}/utils.py (100%) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index d46272da..ae7ca41a 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,6 +1,6 @@ # Contributing -The `neurostatslib` package is designed to provide a robust set of statistical analysis tools for neuroscience research. While the repository is managed by a core team of data scientists at the Center for Computational Neuroscience of the Flatiron Institute, we warmly welcome contributions from external collaborators. +The `nemos` package is designed to provide a robust set of statistical analysis tools for neuroscience research. While the repository is managed by a core team of data scientists at the Center for Computational Neuroscience of the Flatiron Institute, we warmly welcome contributions from external collaborators. ## General Guidelines diff --git a/README.md b/README.md index eae842ef..8fe33d89 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ ![LOGO](CCN-logo-wText.png) -# neurostatslib +# nemos A toolbox of statistical analysis for neuroscience. ## Setup diff --git a/docs/developers_notes/README.md b/docs/developers_notes/README.md index c58e25bb..d655cf21 100644 --- a/docs/developers_notes/README.md +++ b/docs/developers_notes/README.md @@ -1,6 +1,6 @@ # Introduction -Welcome to the Developer Notes of the `neurostatslib` project. These notes aim to provide detailed technical information about the various modules, classes, and functions that make up this library, as well as guidelines on how to write code that integrates nicely with our package. They are intended to help current and future developers understand the design decisions, structure, and functioning of the library, and to provide guidance on how to modify, extend, and maintain the codebase. +Welcome to the Developer Notes of the `nemos` project. These notes aim to provide detailed technical information about the various modules, classes, and functions that make up this library, as well as guidelines on how to write code that integrates nicely with our package. They are intended to help current and future developers understand the design decisions, structure, and functioning of the library, and to provide guidance on how to modify, extend, and maintain the codebase. ## Intended Audience @@ -10,7 +10,7 @@ These notes are primarily intended for the following groups: - **Future Developers**: These notes can help onboard new developers to the project, providing them with detailed explanations of the codebase and its underlying architecture. -- **Contributors**: If you wish to contribute to the `neurostatslib` project, the Developer Notes can provide a solid foundation of understanding, helping to ensure that your contributions align with the existing structure and design principles of the library. +- **Contributors**: If you wish to contribute to the `nemos` project, the Developer Notes can provide a solid foundation of understanding, helping to ensure that your contributions align with the existing structure and design principles of the library. - **Advanced Users**: While the primary focus of these notes is on development, they might also be of interest to advanced users who want a deeper understanding of the library's functionality. @@ -18,7 +18,7 @@ Please note that these notes assume a certain level of programming knowledge. Fa ## Navigating the Developer Notes -The Developer Notes are divided into sections, each focusing on a different module or class within the `neurostatslib` library. Each section provides an overview of the class or module, explains its role and functionality within the library, and offers a comprehensive guide to its classes and functions. Typically, we will provide instructions on how to extend the existing modules. We generally advocate for the use of inheritance and encourage consistency with the existing codebase. In creating developer instructions, we follow the conventions outlined below: +The Developer Notes are divided into sections, each focusing on a different module or class within the `nemos` library. Each section provides an overview of the class or module, explains its role and functionality within the library, and offers a comprehensive guide to its classes and functions. Typically, we will provide instructions on how to extend the existing modules. We generally advocate for the use of inheritance and encourage consistency with the existing codebase. In creating developer instructions, we follow the conventions outlined below: - **Must**: This denotes a requirement. Any method or function that fails to meet the requirement will not be merged. - **Should**: This denotes a suggestion. Reasons should be provided if a suggestion is not followed. diff --git a/docs/developers_notes/basis_module.md b/docs/developers_notes/basis_module.md index 78c6c9d3..a96d875a 100644 --- a/docs/developers_notes/basis_module.md +++ b/docs/developers_notes/basis_module.md @@ -2,7 +2,7 @@ ## Introduction -The `neurostatslib.basis` module provides objects that allow users to construct and evaluate basis functions of various types. The classes are hierarchically organized as follows: +The `nemos.basis` module provides objects that allow users to construct and evaluate basis functions of various types. The classes are hierarchically organized as follows: ``` Abstract Class Basis @@ -30,7 +30,7 @@ Abstract Class Basis The super-class `Basis` provides two public methods, [`evaluate`](#the-public-method-evaluate) and [`evaluate_on_grid`](#the-public-method-evaluate_on_grid). These methods perform checks on both the input provided by the user and the output of the evaluation to ensure correctness, and are thus considered "safe". They both make use of the private abstract method `_evaluate` that is specific for each concrete class. See below for more details. -## The Class `neurostatslib.basis.Basis` +## The Class `nemos.basis.Basis` ### The Public Method `evaluate` @@ -54,7 +54,7 @@ This method performs the following steps: ### Abstract Methods -The `neurostatslib.basis.Basis` class has the following abstract methods, which every concrete subclass must implement: +The `nemos.basis.Basis` class has the following abstract methods, which every concrete subclass must implement: 1. `_evaluate`: Evaluates a basis over some specified samples. 2. `_check_n_basis_min`: Checks the minimum number of basis functions required. This requirement can be specific to the type of basis. @@ -65,7 +65,7 @@ The `neurostatslib.basis.Basis` class has the following abstract methods, which To write a usable (i.e., concrete, non-abstract) basis object, you - **Must** inherit the abstract superclass `Basis` -- **Must** define the `_evaluate` and `_check_n_basis_min` methods with the expected input/output format, see [Code References](../../reference/neurostatslib/basis/) for the specifics. +- **Must** define the `_evaluate` and `_check_n_basis_min` methods with the expected input/output format, see [Code References](../../reference/nemos/basis/) for the specifics. - **Should not** overwrite the `evaluate` and `evaluate_on_grid` methods inherited from `Basis`. - **May** inherit any number of abstract intermediate classes (e.g., `SplineBasis`). - **May** reimplement the `_get_samples` method if your basis domain differs from `[0,1]`. However, we recommend mapping the specific basis domain to `[0,1]` whenever possible. diff --git a/docs/examples/plot_1D_basis_function.py b/docs/examples/plot_1D_basis_function.py index 96545f18..b5d040e2 100644 --- a/docs/examples/plot_1D_basis_function.py +++ b/docs/examples/plot_1D_basis_function.py @@ -14,14 +14,14 @@ import numpy as np import matplotlib.pylab as plt -import neurostatslib as nsl +import nemos as nmo # Initialize hyperparameters order = 4 n_basis = 10 # Define the 1D basis function object -mspline_basis = nsl.basis.MSplineBasis(n_basis_funcs=n_basis, order=order) +mspline_basis = nmo.basis.MSplineBasis(n_basis_funcs=n_basis, order=order) # %% # Evaluating a Basis @@ -63,12 +63,12 @@ # Other Basis Types # ----------------- # Each basis type may necessitate specific hyperparameters for instantiation. For a comprehensive description, -# please refer to the [Code References](../../../reference/neurostatslib/basis). After instantiation, all classes +# please refer to the [Code References](../../../reference/nemos/basis). After instantiation, all classes # share the same syntax for basis evaluation. The following is an example of how to instantiate and # evaluate a log-spaced cosine raised function basis. # Instantiate the basis noting that the `RaisedCosineBasisLog` does not require an `order` parameter -raised_cosine_log = nsl.basis.RaisedCosineBasisLog(n_basis_funcs=10) +raised_cosine_log = nmo.basis.RaisedCosineBasisLog(n_basis_funcs=10) # Evaluate the raised cosine basis at the equi-spaced sample points # (same method in all Basis elements) diff --git a/docs/examples/plot_ND_basis_function.py b/docs/examples/plot_ND_basis_function.py index d356e40a..5752fcca 100644 --- a/docs/examples/plot_ND_basis_function.py +++ b/docs/examples/plot_ND_basis_function.py @@ -65,11 +65,11 @@ import numpy as np import matplotlib.pyplot as plt -import neurostatslib as nsl +import nemos as nmo # Define 1D basis objects -a_basis = nsl.basis.MSplineBasis(n_basis_funcs=15, order=3) -b_basis = nsl.basis.RaisedCosineBasisLog(n_basis_funcs=14) +a_basis = nmo.basis.MSplineBasis(n_basis_funcs=15, order=3) +b_basis = nmo.basis.RaisedCosineBasisLog(n_basis_funcs=14) # Define the 2D additive basis object additive_basis = a_basis + b_basis @@ -238,9 +238,9 @@ T = 10 n_basis = 8 -a_basis = nsl.basis.RaisedCosineBasisLinear(n_basis_funcs=n_basis) -b_basis = nsl.basis.RaisedCosineBasisLinear(n_basis_funcs=n_basis) -c_basis = nsl.basis.RaisedCosineBasisLinear(n_basis_funcs=n_basis) +a_basis = nmo.basis.RaisedCosineBasisLinear(n_basis_funcs=n_basis) +b_basis = nmo.basis.RaisedCosineBasisLinear(n_basis_funcs=n_basis) +c_basis = nmo.basis.RaisedCosineBasisLinear(n_basis_funcs=n_basis) prod_basis_3 = a_basis * b_basis * c_basis samples = np.linspace(0, 1, T) diff --git a/docs/examples/plot_example_convolution.py b/docs/examples/plot_example_convolution.py index ddf9f5e8..dd2b493e 100644 --- a/docs/examples/plot_example_convolution.py +++ b/docs/examples/plot_example_convolution.py @@ -9,7 +9,7 @@ import numpy as np import matplotlib.pylab as plt import matplotlib.patches as patches -import neurostatslib as nsl +import nemos as nmo np.random.seed(10) ws = 11 @@ -39,7 +39,7 @@ # create three filters -basis_obj = nsl.basis.RaisedCosineBasisLinear(n_basis_funcs=3) +basis_obj = nmo.basis.RaisedCosineBasisLinear(n_basis_funcs=3) _, w = basis_obj.evaluate_on_grid(ws) plt.plot(w) @@ -48,7 +48,7 @@ # the function requires an iterable (one element per trial) # and returns a list of convolutions -spk_conv = nsl.utils.convolve_1d_trials(w, [spk, np.zeros((20, 1))]) +spk_conv = nmo.utils.convolve_1d_trials(w, [spk, np.zeros((20, 1))]) print(f"Shape of spk: {spk.shape}\nShape of w: {w.shape}") # valid convolution should be of shape n_samples - ws + 1 @@ -72,9 +72,9 @@ # pad according to the causal direction of the filter, after squeeze, the dimension is (n_filters, n_samples) -spk_causal_utils = np.squeeze(nsl.utils.nan_pad_conv(spk_conv, ws, filter_type="causal")[0]) -spk_anticausal_utils = np.squeeze(nsl.utils.nan_pad_conv(spk_conv, ws, filter_type="anti-causal")[0]) -spk_acausal_utils = np.squeeze(nsl.utils.nan_pad_conv(spk_conv, ws, filter_type="acausal")[0]) +spk_causal_utils = np.squeeze(nmo.utils.nan_pad_conv(spk_conv, ws, filter_type="causal")[0]) +spk_anticausal_utils = np.squeeze(nmo.utils.nan_pad_conv(spk_conv, ws, filter_type="anti-causal")[0]) +spk_acausal_utils = np.squeeze(nmo.utils.nan_pad_conv(spk_conv, ws, filter_type="acausal")[0]) # %% diff --git a/docs/index.md b/docs/index.md index d1aa074f..8a9038f6 100644 --- a/docs/index.md +++ b/docs/index.md @@ -1,4 +1,4 @@ -# neurostatslib +# nemos A toolbox of statistical analysis for neuroscience. ## Disclaimer diff --git a/mkdocs.yml b/mkdocs.yml index 40c413a9..8f4cddb4 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -1,4 +1,4 @@ -site_name: neurostatslib +site_name: nemos repo_url: https://github.com/flatironinstitute/generalized-linear-models theme: diff --git a/pyproject.toml b/pyproject.toml index 2bc0bcb6..5baa7857 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -3,7 +3,7 @@ requires = ["setuptools", "setuptools-scm"] build-backend = "setuptools.build_meta" [project] -name = "neurostatslib" +name = "nemos" version = "0.1.0" authors = [ {name = "Edoardo Balzani", email = "ebalzani@flatironinstitute.org"}, @@ -41,7 +41,7 @@ dependencies = [ # Configure package discovery for setuptools [tool.setuptools.packages.find] where = ["src"] # The directory where package modules are located -include = ["neurostatslib"] # The specific package(s) to include in the distribution +include = ["nemos"] # The specific package(s) to include in the distribution # Define optional dependencies for the project @@ -96,7 +96,7 @@ profile = "black" # Configure pytest [tool.pytest.ini_options] -addopts = "--cov=neurostatslib" # Additional options to pass to pytest, enabling coverage for the 'neurostatslib' package +addopts = "--cov=nemos" # Additional options to pass to pytest, enabling coverage for the 'nemos' package testpaths = ["tests"] # Specify the directory where test files are located [tool.coverage.report] diff --git a/src/neurostatslib/__init__.py b/src/nemos/__init__.py similarity index 100% rename from src/neurostatslib/__init__.py rename to src/nemos/__init__.py diff --git a/src/neurostatslib/basis.py b/src/nemos/basis.py similarity index 99% rename from src/neurostatslib/basis.py rename to src/nemos/basis.py index cd9f4d8d..ef36a28b 100644 --- a/src/neurostatslib/basis.py +++ b/src/nemos/basis.py @@ -12,7 +12,7 @@ from numpy.typing import ArrayLike, NDArray from scipy.interpolate import splev -from neurostatslib.utils import row_wise_kron +from .utils import row_wise_kron __all__ = [ "MSplineBasis", @@ -736,8 +736,8 @@ def _evaluate(self, sample_pts: NDArray) -> NDArray: sample_pts : (number of samples,) Spacing for basis functions, holding elements on interval [0, 1). A good default is - ``nsl.sample_points.raised_cosine_log`` for log spacing (as used in - [2]_) or ``nsl.sample_points.raised_cosine_linear`` for linear + ``nmo.sample_points.raised_cosine_log`` for log spacing (as used in + [2]_) or ``nmo.sample_points.raised_cosine_linear`` for linear spacing. Returns diff --git a/src/neurostatslib/glm.py b/src/nemos/glm.py similarity index 100% rename from src/neurostatslib/glm.py rename to src/nemos/glm.py diff --git a/src/neurostatslib/sample_points.py b/src/nemos/sample_points.py similarity index 100% rename from src/neurostatslib/sample_points.py rename to src/nemos/sample_points.py diff --git a/src/neurostatslib/utils.py b/src/nemos/utils.py similarity index 100% rename from src/neurostatslib/utils.py rename to src/nemos/utils.py diff --git a/tests/test_basis.py b/tests/test_basis.py index 9f34c99d..bd72cd2a 100644 --- a/tests/test_basis.py +++ b/tests/test_basis.py @@ -6,7 +6,7 @@ import pytest import utils_testing -import neurostatslib.basis as basis +import nemos.basis as basis # automatic define user accessible basis and check the methods diff --git a/tests/test_convolution_1d.py b/tests/test_convolution_1d.py index 0184f5e1..4cfa259d 100644 --- a/tests/test_convolution_1d.py +++ b/tests/test_convolution_1d.py @@ -1,7 +1,7 @@ import numpy as np import pytest -import neurostatslib.utils as utils +import nemos.utils as utils class Test1DConvolution: diff --git a/tests/test_glm_runs.py b/tests/test_glm_runs.py index 038fd766..df08f3af 100644 --- a/tests/test_glm_runs.py +++ b/tests/test_glm_runs.py @@ -1,8 +1,8 @@ import jax import numpy as np -from neurostatslib.basis import MSplineBasis -from neurostatslib.glm import GLM +from nemos.basis import MSplineBasis +from nemos.glm import GLM class DimensionMismatchError(Exception): diff --git a/tests/test_glm_synthetic.py b/tests/test_glm_synthetic.py index 72493479..dcf78e1b 100644 --- a/tests/test_glm_synthetic.py +++ b/tests/test_glm_synthetic.py @@ -9,9 +9,9 @@ import matplotlib.pyplot as plt import numpy as onp -import neurostatslib as nsl -from neurostatslib.basis import RaisedCosineBasisLinear -from neurostatslib.glm import GLM +import nemos as nmo +from nemos.basis import RaisedCosineBasisLinear +from nemos.glm import GLM def test_set_up_glm(): diff --git a/tests/test_glm_synthetic_single_neuron.py b/tests/test_glm_synthetic_single_neuron.py index cc6adba8..f1a3083e 100644 --- a/tests/test_glm_synthetic_single_neuron.py +++ b/tests/test_glm_synthetic_single_neuron.py @@ -7,9 +7,9 @@ import matplotlib.pyplot as plt import numpy as onp -import neurostatslib as nsl -from neurostatslib.basis import RaisedCosineBasisLog -from neurostatslib.glm import GLM +import nemos as nmo +from nemos.basis import RaisedCosineBasisLog +from nemos.glm import GLM def test_glm_fit(): From dd4466b7bdfc88e83c2095d6f523aa5303ce5373 Mon Sep 17 00:00:00 2001 From: BalzaniEdoardo Date: Tue, 7 Nov 2023 15:01:00 -0500 Subject: [PATCH 2/5] changed README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 8fe33d89..61988e28 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ ![LOGO](CCN-logo-wText.png) # nemos -A toolbox of statistical analysis for neuroscience. +A toolbox of statistical models for neuroscience. ## Setup From 3c3b2eea0fb342edcdb622c84e2431d252b54643 Mon Sep 17 00:00:00 2001 From: BalzaniEdoardo Date: Tue, 7 Nov 2023 16:39:08 -0500 Subject: [PATCH 3/5] add deploy action --- .github/workflows/deploy-pure-python.yml | 75 ++++++++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100644 .github/workflows/deploy-pure-python.yml diff --git a/.github/workflows/deploy-pure-python.yml b/.github/workflows/deploy-pure-python.yml new file mode 100644 index 00000000..2135c0cf --- /dev/null +++ b/.github/workflows/deploy-pure-python.yml @@ -0,0 +1,75 @@ +name: Build and upload to PyPI for pure python +on: + release: + types: [published] + +jobs: + build: + name: Build and test package + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + # this is necessary for setuptools_scm to work properly with github + # actions, see https://github.com/pypa/setuptools_scm/issues/480 and + # https://stackoverflow.com/a/68959339 + with: + fetch-depth: 0 + - name: Set up Python + uses: actions/setup-python@v4 + with: + python-version: '3.x' + - name: Build package + run: | + pip install build + python -m build --outdir dist/ --sdist --wheel + - name: Check there's only one sdist and one whl file created + shell: bash + # because the following two tests will be weird otherwise. see + # https://askubuntu.com/a/454568 for why this is the right way to handle + # it. using [[ BOOLEAN ]] || EXPR is a compact way of writing IF NOT + # BOOLEAN THEN EXPR in bash + run: | + [[ $(find dist/ -type f -name "*whl" -printf x | wc -c) == 1 ]] || exit 1 + [[ $(find dist/ -type f -name "*tar.gz" -printf x | wc -c) == 1 ]] || exit 1 + - name: Check setuptools_scm version against git tag + shell: bash + run: | + # we use the error code of this comparison: =~ is bash's regex + # operator, so it checks whether the right side is contained in the + # left side. In particular, we succeed if the path of the source code + # ends in the most recent git tag, fail if it does not. + [[ "$(ls dist/*tar.gz)" =~ "-$(git describe --tags).tar.gz" ]] + - name: Check we can install from wheel + # note that this is how this works in bash (different shells might be + # slightly different). we've checked there's only one .whl file in an + # earlier step, so the bit in `$()` will expand to that single file, + # then we pass [dev] to get specify the optional dev dependencies, and + # we wrap the whole thing in quotes so bash doesn't try to interpret the + # square brackets but passes them directly to pip install + shell: bash + run: | + pip install "$(ls dist/*whl)[dev]" + - name: Run some tests + # modify the following as necessary to e.g., run notebooks + run: | + pytest + - uses: actions/upload-artifact@v3 + with: + path: dist/* + + publish: + name: Upload release to Test PyPI + needs: [build] + environment: pypi + runs-on: ubuntu-latest + permissions: + id-token: write # IMPORTANT: this permission is mandatory for trusted publishing + steps: + - uses: actions/download-artifact@v3 + with: + name: artifact + path: dist + - name: Publish package to test pypi + uses: pypa/gh-action-pypi-publish@release/v1 + with: + repository-url: https://test.pypi.org/legacy/ \ No newline at end of file From 4cb7aa1572b3779507fb5c55920913394aa8281b Mon Sep 17 00:00:00 2001 From: BalzaniEdoardo Date: Tue, 7 Nov 2023 16:49:57 -0500 Subject: [PATCH 4/5] added description and disclaimer --- README.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 61988e28..2e584c90 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,10 @@ ![LOGO](CCN-logo-wText.png) # nemos -A toolbox of statistical models for neuroscience. +NEural MOdelS, a statistical modeling framework for neuroscience. + +## Disclaimer +This is an alpha version, the code is in active development and the API is subject to change. ## Setup From b2c771cc5bd7bcfe5f008da2e35dd1a8c3579160 Mon Sep 17 00:00:00 2001 From: "William F. Broderick" Date: Tue, 7 Nov 2023 16:53:23 -0500 Subject: [PATCH 5/5] renames generalized-linear-model to nemos --- README.md | 4 ++-- docs/developers_notes/README.md | 4 ++-- docs/index.md | 2 +- mkdocs.yml | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 2e584c90..6db51750 100644 --- a/README.md +++ b/README.md @@ -11,8 +11,8 @@ This is an alpha version, the code is in active development and the API is subje To install, clone this repo and install using `pip`: ``` sh -git clone git@github.com:flatironinstitute/generalized-linear-models.git -cd generalized-linear-models/ +git clone git@github.com:flatironinstitute/nemos.git +cd nemos/ pip install -e . ``` diff --git a/docs/developers_notes/README.md b/docs/developers_notes/README.md index d655cf21..9c6b26ac 100644 --- a/docs/developers_notes/README.md +++ b/docs/developers_notes/README.md @@ -26,9 +26,9 @@ The Developer Notes are divided into sections, each focusing on a different modu ## Interact with us -If you're considering contributing to the library, first of all, welcome aboard! As a first step, we recommend that you read the [`CONTRIBUTING.md`](https://github.com/flatironinstitute/generalized-linear-models/blob/main/CONTRIBUTING.md) guidelines. These will help you understand how to interact with other contributors and how to submit your changes. +If you're considering contributing to the library, first of all, welcome aboard! As a first step, we recommend that you read the [`CONTRIBUTING.md`](https://github.com/flatironinstitute/nemos/blob/main/CONTRIBUTING.md) guidelines. These will help you understand how to interact with other contributors and how to submit your changes. -If you have any questions or need further clarification on any of the topics covered in these notes, please don't hesitate to reach out to us. You can do so via the [discussion](https://github.com/flatironinstitute/generalized-linear-models/discussions/landing) forum on GitHub. +If you have any questions or need further clarification on any of the topics covered in these notes, please don't hesitate to reach out to us. You can do so via the [discussion](https://github.com/flatironinstitute/nemos/discussions/landing) forum on GitHub. We're looking forward to your contributions and to answering any queries you might have! diff --git a/docs/index.md b/docs/index.md index 8a9038f6..f4ff1443 100644 --- a/docs/index.md +++ b/docs/index.md @@ -4,4 +4,4 @@ A toolbox of statistical analysis for neuroscience. ## Disclaimer Please note that this package is currently under development. While you can download and test the functionalities that are already present, it's important to be aware that the code stability and systematic testing cannot be guaranteed at this stage. -See our [README](https://github.com/flatironinstitute/generalized-linear-models/blob/main/README.md) for more info. \ No newline at end of file +See our [README](https://github.com/flatironinstitute/nemos/blob/main/README.md) for more info. diff --git a/mkdocs.yml b/mkdocs.yml index 8f4cddb4..016666d8 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -1,5 +1,5 @@ site_name: nemos -repo_url: https://github.com/flatironinstitute/generalized-linear-models +repo_url: https://github.com/flatironinstitute/nemos theme: name: 'material' # The theme name, using the 'material' theme