{"id":48083252,"url":"https://github.com/powerfulbean/mtrfpy","last_synced_at":"2026-04-04T15:00:00.878Z","repository":{"id":40921033,"uuid":"277399725","full_name":"powerfulbean/mTRFpy","owner":"powerfulbean","description":"a python3 version of matlab mTRF-Toolbox by Lalor Lab https://mtrfpy.readthedocs.io/","archived":false,"fork":false,"pushed_at":"2026-03-22T18:32:17.000Z","size":213604,"stargazers_count":37,"open_issues_count":2,"forks_count":15,"subscribers_count":4,"default_branch":"master","last_synced_at":"2026-03-27T13:49:20.367Z","etag":null,"topics":["eeg","lalorlab","python","temporal-response-function"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/powerfulbean.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2020-07-05T23:23:13.000Z","updated_at":"2026-03-26T10:39:48.000Z","dependencies_parsed_at":"2023-02-16T09:01:12.811Z","dependency_job_id":"a5ee93a9-d5dc-43db-8880-36c79ca0700a","html_url":"https://github.com/powerfulbean/mTRFpy","commit_stats":null,"previous_names":[],"tags_count":10,"template":false,"template_full_name":null,"purl":"pkg:github/powerfulbean/mTRFpy","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/powerfulbean%2FmTRFpy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/powerfulbean%2FmTRFpy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/powerfulbean%2FmTRFpy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/powerfulbean%2FmTRFpy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/powerfulbean","download_url":"https://codeload.github.com/powerfulbean/mTRFpy/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/powerfulbean%2FmTRFpy/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31403952,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-04T10:20:44.708Z","status":"ssl_error","status_checked_at":"2026-04-04T10:20:06.846Z","response_time":60,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["eeg","lalorlab","python","temporal-response-function"],"created_at":"2026-04-04T15:00:00.083Z","updated_at":"2026-04-04T15:00:00.870Z","avatar_url":"https://github.com/powerfulbean.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"![Package](https://github.com/powerfulbean/mTRFpy/workflows/Python%20package/badge.svg)\n[![Maintenance](https://img.shields.io/badge/Maintained%3F-yes-brightgreen.svg)](https://github.com/powefulbean/mTRFpy/graphs/commit-activity)\n[![Documentation Status](https://readthedocs.org/projects/mtrfpy/badge/?version=latest)](https://mtrfpy.readthedocs.io/en/latest/?badge=latest)\n![PyPI pyversions](https://img.shields.io/badge/python-%3E%3D3.9-blue)\n![PyPI license](https://img.shields.io/badge/license-MIT-brightgreen)\n[![PyPI version](https://badge.fury.io/py/mtrf.svg)](https://badge.fury.io/py/mtrf)\n[![DOI](https://joss.theoj.org/papers/10.21105/joss.05657/status.svg)](https://doi.org/10.21105/joss.05657)\n# mTRFpy - multivariate linear modeling\n\nThis is an adaptation of the matlab mTRF-toolbox using only basic Python and Numpy.\nIt aims to implement the same methods as the original toolbox and advance them.\nThis documentation provides tutorial-like demonstrations of the core functionalities like model fitting, visualization and optimization as well as a comprehensive reference documentation.\n\n# News\n- [2025.10.21] 🔧 Version 2.1.2 has been released for better capability with torch.tensor (trf.train and trf.predict for now).\n- [2025.10.13] 🔧 Version 2.1.1 has been released for fixing the bug when fs is provided as a native int. A native int causes the array-api-compat.floor/ceil throw the error that fs doesn't have the attribute 'dtype'.\n- [2025.10.11] 🚀 Version 2.1.0 has been released! mTRFpy is now compatible with the Array API standard through [array-api-compat](https://github.com/data-apis/array-api-compat). ✨ **New feature**: Support for fitting a separate regularization parameter for each output channel.\n\n# Installation\n\nYou can get the stable release from PyPI:\n```sh\n    pip install mtrf \n```\n    \nOr get the latest version from this repo:\n```sh\n    pip install git+https://github.com/powerfulbean/mTRFpy.git\n```\n\nWhile mTRFpy only depends on numpy, matplotlib is an optional dependency used to\nvisualize models. It can also be installed via pip:\n\n```sh\n    pip install matplotlib\n```\n\nWe also provide an optional interface to MNE-Python so it might be useful to [install mne](https://mne.tools/stable/install/manual_install.html) as well.\n\n# Getting started\n\nFor a little tutorial on the core features of mTRFpy, have a look at our [online documentation](https://mtrfpy.readthedocs.io)\n# Found a bug?\n\n1. Please use the issue search to check if the issue has already been reportet.\n2. Try to reproduce problem using the latest` master` branch.\n3. Create an issue with a minimal example that reproduces the problem.\n\n# Missing a feature?\n\nFeature requests are welcome. But take a moment to find out whether your idea\nfits with the scope and aims of the project. It's up to *you* to make a strong\ncase to convince the project's developers of the merits of this feature. Please\nprovide as much detail and context as possible.\n\n# Want to contribute to the project?\n\nGreat! Please take a moment to read the ![contribution guidelines](https://github.com/powerfulbean/mTRFpy/blob/master/CONTRIBUTING.md) before you do.\n\n# Citing mTRFpy\nBialas et al., (2023). mTRFpy: A Python package for temporal response function analysis. Journal of Open Source Software, 8(89), 5657, https://doi.org/10.21105/joss.05657\n```\n@article{Bialas2023,\n    doi = {10.21105/joss.05657},\n    url = {https://doi.org/10.21105/joss.05657},\n    year = {2023}, publisher = {The Open Journal},\n    volume = {8},\n    number = {89},\n    pages = {5657},\n    author = {Ole Bialas and Jin Dou and Edmund C. Lalor},\n    title = {mTRFpy: A Python package for temporal response function analysis},\n    journal = {Journal of Open Source Software} } \n```\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpowerfulbean%2Fmtrfpy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpowerfulbean%2Fmtrfpy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpowerfulbean%2Fmtrfpy/lists"}