{"id":18422449,"url":"https://github.com/sri-csl/ndk","last_synced_at":"2025-10-20T11:32:16.114Z","repository":{"id":137662365,"uuid":"299678934","full_name":"SRI-CSL/ndk","owner":"SRI-CSL","description":"Neurogram Deconvolution Kit","archived":false,"fork":false,"pushed_at":"2024-02-16T18:38:45.000Z","size":827,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":17,"default_branch":"master","last_synced_at":"2024-12-24T18:29:16.757Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SRI-CSL.png","metadata":{"files":{"readme":"README.txt","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-09-29T16:44:18.000Z","updated_at":"2023-02-07T21:58:18.000Z","dependencies_parsed_at":null,"dependency_job_id":"728902c0-0a23-46c9-8464-29b652a26242","html_url":"https://github.com/SRI-CSL/ndk","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SRI-CSL%2Fndk","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SRI-CSL%2Fndk/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SRI-CSL%2Fndk/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SRI-CSL%2Fndk/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SRI-CSL","download_url":"https://codeload.github.com/SRI-CSL/ndk/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239101087,"owners_count":19581787,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":[],"created_at":"2024-11-06T04:30:05.753Z","updated_at":"2025-10-20T11:32:11.077Z","avatar_url":"https://github.com/SRI-CSL.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"The Neurogram Deconvolution Kit:\n\n    A mostly-python library for analysis and visualization of local\n    field potential recordings of peripheral nerves.  Although the\n    primary focus is peripheral nerve activity, this library will also\n    be exercised on Cardiac, EEG and possibly other biological\n    time-series data.\n\nCoauthors and contributors:\n\n\t  Chris Connolly\n\t  Maneesh Yadav\n\t  Andy Poggio\n\t  Pat Lincoln\n\n\nThe high-level view: Dense, raw electrical recordings are stored in\nApache Cassandra, or any format supported by the 'neo' python package.\nWhile Cassandra was an initial data store substrate, we also use an\ninternal binary format called 'nbf'.  The 'nbf' format consists of\nmemory-mappable raw data files, along with metadata stored in pickled\npython form.  Look at nbf.py for details. \n\nThe ndk package extracts sparser discrete features (action potential\nspikes, for example) from dense time series data and stores them in a\nseparate data store that allows such features to be classified and\nvisualized.  These data stores are currently restricted to sqlite3 .db\nfiles.  These .db files always point to the raw data source from which\nthey're derived.\n\nIn the interests of standardization of view and efficiency of data\naccess, NDK also supports a memory-mapped raw data format called\n'nbf'.\n\nNDK works using Python 2.7 and Python 3.5 on Ubuntu Linux, Mac OSX,\nand Windows.  See below for Windows installation instructions.  Note\nthat the Windows build has only been tested under Windows 7.\n\n\n\nINSTALLATION ON LINUX AND MACOSX\n================================\n\nNDK was originally developed in Python 2.7 under Ubuntu Linux and Mac\nOS X.  Current and future development will rely on Python 3, but will\nbe backward compatible with Python 2.7.\n\nThe ndk can be installed by cd'ing into the ndk top-level directory\nand doing the following:\n\n    pip install .\n\nNDK's setup.py file includes all of the needed dependencies, so they\nshould be autoloaded when you use pip.\n\nhere are the module dependencies:\n\n\tneo\n\tnumpy\n\tscipy\n\tsqlite3\n\tsklearn\n\tpyOpenGL\n\tquantities\n\tmatplotlib\n\n\tTheano (optional)\n\nThe 'mkspikes2' script uses Theano for fast convolution.  If you don't\nhave theano installed, 'mkspikes' will do the job somewhat more slowly.\n\nThe ndk module has two submodules, ds, and es, that provide access to\nraw data stores and event stores respectively (hence the names).\n\nMatlab notes: with version R2014b and higher, python functionality is\neasily accessed within Matlab.  The ndk subdirectory 'matlab' contains\n.m files that define the NDK Matlab API.\n\n\n\nNOTES FOR INSTALLING ON WINDOWS:\n================================\n\n\nYou can do a pip install of NDK on Windows, but there's a chance that\nthe 'vscatter' and 'vrasters' utilities won't work.  This is because\nthese utilities require OpenGL.  This can be a little tricky,\nprimarily because PyOpenGL.GLUT depends on the correct version and\nplacement of the GLUT DLL.  The following recipe has been tested on a\nbare Windows 7 VM using:\n\n   o 32-bit Python 2.7 (Anaconda)\n     32-bit PyOpenGL‑3.1.1‑cp27‑cp27m‑win32.whl\n     32-bit PyOpenGL_accelerate‑3.1.1‑cp27‑cp27m‑win32.whl\n\n\n\n1) Install the 32-bit Anaconda Python Distribution for Python version\n   2.7 from https://www.continuum.io/downloads#windows\n\n[Note, the following two steps are thanks to stackoverflow answers. See the thread in\n  http://stackoverflow.com/questions/26700719/pyopengl-glutinit-nullfunctionerror  ]\n\n\n2) Go to http://www.lfd.uci.edu/~gohlke/pythonlibs/#pyopengl and \ndownload these two files:\n         PyOpenGL‑3.1.1‑cp27‑cp27m‑win32.whl\n\t PyOpenGL_accelerate‑3.1.1‑cp27‑cp27m‑win32.whl\n\n3) Open the Anaconda Command Shell (preferably as Administrator) and use pip to install them:\n         pip install PyOpenGL‑3.1.1‑cp27‑cp27m‑win32.whl\n\t pip install PyOpenGL_accelerate‑3.1.1‑cp27‑cp27m‑win32.whl\n\n4) Install git (windows version) https://git-scm.com/downloads\n\n5) Clone the NDK repo: \"git clone https://github.com/SRI-CSL/ndk.git\"\n\n6) cd to the 'ndk' directory and install:\n     pip install .\n\n\n\n\nMore to come!\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsri-csl%2Fndk","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsri-csl%2Fndk","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsri-csl%2Fndk/lists"}