py-neuromodulation 0.0.4__tar.gz → 0.0.6__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (222) hide show
  1. py_neuromodulation-0.0.6/.github/workflows/docs_pages.yml +57 -0
  2. py_neuromodulation-0.0.6/.github/workflows/python-publish.yml +39 -0
  3. py_neuromodulation-0.0.6/.github/workflows/tests.yml +59 -0
  4. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/.gitignore +196 -175
  5. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/LICENSE +21 -21
  6. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/PKG-INFO +28 -33
  7. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/README.rst +98 -111
  8. py_neuromodulation-0.0.6/docs/Makefile +20 -0
  9. py_neuromodulation-0.0.6/docs/make.bat +35 -0
  10. py_neuromodulation-0.0.6/docs/source/_static/CEBRA_embedding.png +0 -0
  11. py_neuromodulation-0.0.6/docs/source/_static/RMAP_figure.png +0 -0
  12. py_neuromodulation-0.0.6/docs/source/_static/css/RMAP_figure.png +0 -0
  13. py_neuromodulation-0.0.6/docs/source/_static/css/project-template.css +16 -0
  14. py_neuromodulation-0.0.6/docs/source/_templates/custom-class-template.rst +7 -0
  15. py_neuromodulation-0.0.6/docs/source/_templates/custom-module-template.rst +67 -0
  16. py_neuromodulation-0.0.6/docs/source/api_documentation.rst +51 -0
  17. py_neuromodulation-0.0.6/docs/source/conf.py +95 -0
  18. py_neuromodulation-0.0.6/docs/source/contributing.rst +36 -0
  19. py_neuromodulation-0.0.6/docs/source/index.rst +66 -0
  20. py_neuromodulation-0.0.6/docs/source/installation.rst +46 -0
  21. py_neuromodulation-0.0.6/docs/source/nm_IO.rst +5 -0
  22. py_neuromodulation-0.0.6/docs/source/nm_RMAP.rst +5 -0
  23. py_neuromodulation-0.0.6/docs/source/nm_analysis.rst +5 -0
  24. py_neuromodulation-0.0.6/docs/source/nm_bursts.rst +5 -0
  25. py_neuromodulation-0.0.6/docs/source/nm_coherence.rst +5 -0
  26. py_neuromodulation-0.0.6/docs/source/nm_decode.rst +5 -0
  27. py_neuromodulation-0.0.6/docs/source/nm_define_nmchannels.rst +5 -0
  28. py_neuromodulation-0.0.6/docs/source/nm_features.rst +5 -0
  29. py_neuromodulation-0.0.6/docs/source/nm_filter.rst +5 -0
  30. py_neuromodulation-0.0.6/docs/source/nm_fooof.rst +5 -0
  31. py_neuromodulation-0.0.6/docs/source/nm_generator.rst +5 -0
  32. py_neuromodulation-0.0.6/docs/source/nm_hjorth.rst +5 -0
  33. py_neuromodulation-0.0.6/docs/source/nm_kalmanfilter.rst +5 -0
  34. py_neuromodulation-0.0.6/docs/source/nm_linelength.rst +5 -0
  35. py_neuromodulation-0.0.6/docs/source/nm_mne_connectivity.rst +5 -0
  36. py_neuromodulation-0.0.6/docs/source/nm_nolds.rst +5 -0
  37. py_neuromodulation-0.0.6/docs/source/nm_normalization.rst +5 -0
  38. py_neuromodulation-0.0.6/docs/source/nm_oscillatory.rst +11 -0
  39. py_neuromodulation-0.0.6/docs/source/nm_plots.rst +5 -0
  40. py_neuromodulation-0.0.6/docs/source/nm_projection.rst +5 -0
  41. py_neuromodulation-0.0.6/docs/source/nm_rereference.rst +5 -0
  42. py_neuromodulation-0.0.6/docs/source/nm_resample.rst +5 -0
  43. py_neuromodulation-0.0.6/docs/source/nm_run_analysis.rst +5 -0
  44. py_neuromodulation-0.0.6/docs/source/nm_settings.rst +5 -0
  45. py_neuromodulation-0.0.6/docs/source/nm_sharpwaves.rst +5 -0
  46. py_neuromodulation-0.0.6/docs/source/nm_stats.rst +5 -0
  47. py_neuromodulation-0.0.6/docs/source/nm_stream.rst +5 -0
  48. py_neuromodulation-0.0.6/docs/source/nm_stream_abc.rst +5 -0
  49. py_neuromodulation-0.0.6/docs/source/usage.rst +559 -0
  50. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/examples/README.rst +4 -5
  51. py_neuromodulation-0.0.6/examples/example_cebra_decoding.html +8360 -0
  52. py_neuromodulation-0.0.6/examples/example_cebra_decoding.ipynb +796 -0
  53. py_neuromodulation-0.0.6/examples/example_rmap.ipynb +259 -0
  54. py_neuromodulation-0.0.6/examples/plot_2_example_add_feature.py +90 -0
  55. py_neuromodulation-0.0.6/examples/plot_3_example_sharpwave_analysis.py +328 -0
  56. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/examples/plot_4_example_gridPointProjection.py +207 -210
  57. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/examples/plot_5_example_rmap_computing.py +63 -64
  58. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/examples/plot_6_real_time_demo.py +119 -121
  59. py_neuromodulation-0.0.6/examples/plot_7_lsl_example.py +124 -0
  60. py_neuromodulation-0.0.6/examples/plot_8_cebra_example.py +29 -0
  61. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/py_neuromodulation/ConnectivityDecoding/_get_grid_hull.m +34 -34
  62. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/py_neuromodulation/ConnectivityDecoding/_get_grid_whole_brain.py +95 -106
  63. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/py_neuromodulation/ConnectivityDecoding/_helper_write_connectome.py +107 -119
  64. py_neuromodulation-0.0.6/py_neuromodulation/__init__.py +80 -0
  65. py_neuromodulation-0.0.4/py_neuromodulation/nm_RMAP.py → py_neuromodulation-0.0.6/py_neuromodulation/analysis/RMAP.py +496 -531
  66. py_neuromodulation-0.0.6/py_neuromodulation/analysis/__init__.py +4 -0
  67. py_neuromodulation-0.0.4/py_neuromodulation/nm_decode.py → py_neuromodulation-0.0.6/py_neuromodulation/analysis/decode.py +918 -992
  68. py_neuromodulation-0.0.4/py_neuromodulation/nm_analysis.py → py_neuromodulation-0.0.6/py_neuromodulation/analysis/feature_reader.py +994 -1074
  69. py_neuromodulation-0.0.4/py_neuromodulation/nm_plots.py → py_neuromodulation-0.0.6/py_neuromodulation/analysis/plots.py +627 -612
  70. py_neuromodulation-0.0.4/py_neuromodulation/nm_stats.py → py_neuromodulation-0.0.6/py_neuromodulation/analysis/stats.py +458 -480
  71. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/py_neuromodulation/data/README +6 -6
  72. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/py_neuromodulation/data/dataset_description.json +8 -8
  73. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/py_neuromodulation/data/participants.json +32 -32
  74. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/py_neuromodulation/data/participants.tsv +2 -2
  75. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/py_neuromodulation/data/sub-testsub/ses-EphysMedOff/ieeg/sub-testsub_ses-EphysMedOff_space-mni_coordsystem.json +5 -5
  76. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/py_neuromodulation/data/sub-testsub/ses-EphysMedOff/ieeg/sub-testsub_ses-EphysMedOff_space-mni_electrodes.tsv +11 -11
  77. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/py_neuromodulation/data/sub-testsub/ses-EphysMedOff/ieeg/sub-testsub_ses-EphysMedOff_task-gripforce_run-0_channels.tsv +11 -11
  78. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/py_neuromodulation/data/sub-testsub/ses-EphysMedOff/ieeg/sub-testsub_ses-EphysMedOff_task-gripforce_run-0_ieeg.json +18 -18
  79. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/py_neuromodulation/data/sub-testsub/ses-EphysMedOff/ieeg/sub-testsub_ses-EphysMedOff_task-gripforce_run-0_ieeg.vhdr +35 -35
  80. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/py_neuromodulation/data/sub-testsub/ses-EphysMedOff/ieeg/sub-testsub_ses-EphysMedOff_task-gripforce_run-0_ieeg.vmrk +13 -13
  81. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/py_neuromodulation/data/sub-testsub/ses-EphysMedOff/sub-testsub_ses-EphysMedOff_scans.tsv +2 -2
  82. py_neuromodulation-0.0.6/py_neuromodulation/default_settings.yaml +241 -0
  83. py_neuromodulation-0.0.6/py_neuromodulation/features/__init__.py +31 -0
  84. py_neuromodulation-0.0.6/py_neuromodulation/features/bandpower.py +165 -0
  85. py_neuromodulation-0.0.6/py_neuromodulation/features/bispectra.py +157 -0
  86. py_neuromodulation-0.0.6/py_neuromodulation/features/bursts.py +297 -0
  87. py_neuromodulation-0.0.6/py_neuromodulation/features/coherence.py +255 -0
  88. py_neuromodulation-0.0.6/py_neuromodulation/features/feature_processor.py +121 -0
  89. py_neuromodulation-0.0.6/py_neuromodulation/features/fooof.py +142 -0
  90. py_neuromodulation-0.0.6/py_neuromodulation/features/hjorth_raw.py +57 -0
  91. py_neuromodulation-0.0.6/py_neuromodulation/features/linelength.py +21 -0
  92. py_neuromodulation-0.0.6/py_neuromodulation/features/mne_connectivity.py +148 -0
  93. py_neuromodulation-0.0.6/py_neuromodulation/features/nolds.py +94 -0
  94. py_neuromodulation-0.0.6/py_neuromodulation/features/oscillatory.py +249 -0
  95. py_neuromodulation-0.0.6/py_neuromodulation/features/sharpwaves.py +432 -0
  96. py_neuromodulation-0.0.6/py_neuromodulation/filter/__init__.py +3 -0
  97. py_neuromodulation-0.0.6/py_neuromodulation/filter/kalman_filter.py +67 -0
  98. py_neuromodulation-0.0.6/py_neuromodulation/filter/kalman_filter_external.py +1890 -0
  99. py_neuromodulation-0.0.6/py_neuromodulation/filter/mne_filter.py +128 -0
  100. py_neuromodulation-0.0.6/py_neuromodulation/filter/notch_filter.py +93 -0
  101. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/py_neuromodulation/grid_cortex.tsv +40 -40
  102. py_neuromodulation-0.0.6/py_neuromodulation/liblsl/libpugixml.so.1.12 +0 -0
  103. py_neuromodulation-0.0.6/py_neuromodulation/liblsl/linux/bionic_amd64/liblsl.1.16.2.so +0 -0
  104. py_neuromodulation-0.0.6/py_neuromodulation/liblsl/linux/bookworm_amd64/liblsl.1.16.2.so +0 -0
  105. py_neuromodulation-0.0.6/py_neuromodulation/liblsl/linux/focal_amd46/liblsl.1.16.2.so +0 -0
  106. py_neuromodulation-0.0.6/py_neuromodulation/liblsl/linux/jammy_amd64/liblsl.1.16.2.so +0 -0
  107. py_neuromodulation-0.0.6/py_neuromodulation/liblsl/linux/jammy_x86/liblsl.1.16.2.so +0 -0
  108. py_neuromodulation-0.0.6/py_neuromodulation/liblsl/linux/noble_amd64/liblsl.1.16.2.so +0 -0
  109. py_neuromodulation-0.0.6/py_neuromodulation/liblsl/macos/amd64/liblsl.1.16.2.dylib +0 -0
  110. py_neuromodulation-0.0.6/py_neuromodulation/liblsl/macos/arm64/liblsl.1.16.0.dylib +0 -0
  111. py_neuromodulation-0.0.6/py_neuromodulation/liblsl/windows/amd64/liblsl.1.16.2.dll +0 -0
  112. py_neuromodulation-0.0.6/py_neuromodulation/liblsl/windows/x86/liblsl.1.16.2.dll +0 -0
  113. py_neuromodulation-0.0.6/py_neuromodulation/processing/__init__.py +10 -0
  114. py_neuromodulation-0.0.4/py_neuromodulation/nm_artifacts.py → py_neuromodulation-0.0.6/py_neuromodulation/processing/artifacts.py +29 -25
  115. py_neuromodulation-0.0.6/py_neuromodulation/processing/data_preprocessor.py +77 -0
  116. py_neuromodulation-0.0.6/py_neuromodulation/processing/filter_preprocessing.py +78 -0
  117. py_neuromodulation-0.0.6/py_neuromodulation/processing/normalization.py +175 -0
  118. py_neuromodulation-0.0.4/py_neuromodulation/nm_projection.py → py_neuromodulation-0.0.6/py_neuromodulation/processing/projection.py +370 -394
  119. py_neuromodulation-0.0.4/py_neuromodulation/nm_rereference.py → py_neuromodulation-0.0.6/py_neuromodulation/processing/rereference.py +97 -95
  120. py_neuromodulation-0.0.4/py_neuromodulation/nm_resample.py → py_neuromodulation-0.0.6/py_neuromodulation/processing/resample.py +56 -50
  121. py_neuromodulation-0.0.6/py_neuromodulation/stream/__init__.py +3 -0
  122. py_neuromodulation-0.0.6/py_neuromodulation/stream/data_processor.py +325 -0
  123. py_neuromodulation-0.0.6/py_neuromodulation/stream/generator.py +53 -0
  124. py_neuromodulation-0.0.6/py_neuromodulation/stream/mnelsl_player.py +94 -0
  125. py_neuromodulation-0.0.6/py_neuromodulation/stream/mnelsl_stream.py +120 -0
  126. py_neuromodulation-0.0.6/py_neuromodulation/stream/settings.py +292 -0
  127. py_neuromodulation-0.0.6/py_neuromodulation/stream/stream.py +427 -0
  128. py_neuromodulation-0.0.6/py_neuromodulation/utils/__init__.py +2 -0
  129. py_neuromodulation-0.0.4/py_neuromodulation/nm_define_nmchannels.py → py_neuromodulation-0.0.6/py_neuromodulation/utils/channels.py +305 -302
  130. py_neuromodulation-0.0.6/py_neuromodulation/utils/database.py +149 -0
  131. py_neuromodulation-0.0.6/py_neuromodulation/utils/io.py +378 -0
  132. py_neuromodulation-0.0.6/py_neuromodulation/utils/keyboard.py +52 -0
  133. py_neuromodulation-0.0.6/py_neuromodulation/utils/logging.py +66 -0
  134. py_neuromodulation-0.0.6/py_neuromodulation/utils/types.py +251 -0
  135. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/pyproject.toml +27 -32
  136. py_neuromodulation-0.0.6/sub_SETTINGS.yaml +112 -0
  137. py_neuromodulation-0.0.6/sub_SIDECAR.json +6 -0
  138. py_neuromodulation-0.0.6/tests/conftest.py +162 -0
  139. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/tests/test_all_examples.py +10 -10
  140. py_neuromodulation-0.0.6/tests/test_all_features.py +55 -0
  141. py_neuromodulation-0.0.6/tests/test_bispectra.py +59 -0
  142. py_neuromodulation-0.0.6/tests/test_bursts.py +73 -0
  143. py_neuromodulation-0.0.6/tests/test_database.py +38 -0
  144. py_neuromodulation-0.0.6/tests/test_feature_sampling_rates.py +144 -0
  145. py_neuromodulation-0.0.6/tests/test_fooof.py +21 -0
  146. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/tests/test_initalization_offline_stream.py +41 -41
  147. py_neuromodulation-0.0.6/tests/test_lsl_stream.py +93 -0
  148. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/tests/test_nan_values.py +27 -29
  149. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/tests/test_nm_filter.py +96 -95
  150. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/tests/test_nm_resample.py +64 -63
  151. py_neuromodulation-0.0.6/tests/test_normalization_settings.py +152 -0
  152. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/tests/test_notch_filter.py +29 -31
  153. py_neuromodulation-0.0.6/tests/test_osc_features.py +411 -0
  154. py_neuromodulation-0.0.6/tests/test_preprocessing_filter.py +130 -0
  155. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/tests/test_rereference.py +162 -171
  156. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/tests/test_sampling.py +60 -57
  157. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/tests/test_settings_change_after_init.py +81 -76
  158. py_neuromodulation-0.0.6/tests/test_sharpwave.py +130 -0
  159. py_neuromodulation-0.0.6/tests/test_target_channel_add.py +94 -0
  160. py_neuromodulation-0.0.6/tests/test_timing.py +73 -0
  161. py_neuromodulation-0.0.4/.readthedocs.yaml +0 -25
  162. py_neuromodulation-0.0.4/examples/plot_2_example_add_feature.py +0 -76
  163. py_neuromodulation-0.0.4/examples/plot_3_example_sharpwave_analysis.py +0 -219
  164. py_neuromodulation-0.0.4/py_neuromodulation/FieldTrip.py +0 -589
  165. py_neuromodulation-0.0.4/py_neuromodulation/__init__.py +0 -13
  166. py_neuromodulation-0.0.4/py_neuromodulation/_write_example_dataset_helper.py +0 -65
  167. py_neuromodulation-0.0.4/py_neuromodulation/nm_EpochStream.py +0 -92
  168. py_neuromodulation-0.0.4/py_neuromodulation/nm_IO.py +0 -417
  169. py_neuromodulation-0.0.4/py_neuromodulation/nm_across_patient_decoding.py +0 -927
  170. py_neuromodulation-0.0.4/py_neuromodulation/nm_bispectra.py +0 -168
  171. py_neuromodulation-0.0.4/py_neuromodulation/nm_bursts.py +0 -198
  172. py_neuromodulation-0.0.4/py_neuromodulation/nm_coherence.py +0 -205
  173. py_neuromodulation-0.0.4/py_neuromodulation/nm_cohortwrapper.py +0 -435
  174. py_neuromodulation-0.0.4/py_neuromodulation/nm_eval_timing.py +0 -239
  175. py_neuromodulation-0.0.4/py_neuromodulation/nm_features.py +0 -116
  176. py_neuromodulation-0.0.4/py_neuromodulation/nm_features_abc.py +0 -39
  177. py_neuromodulation-0.0.4/py_neuromodulation/nm_filter.py +0 -219
  178. py_neuromodulation-0.0.4/py_neuromodulation/nm_filter_preprocessing.py +0 -91
  179. py_neuromodulation-0.0.4/py_neuromodulation/nm_fooof.py +0 -159
  180. py_neuromodulation-0.0.4/py_neuromodulation/nm_generator.py +0 -37
  181. py_neuromodulation-0.0.4/py_neuromodulation/nm_hjorth_raw.py +0 -73
  182. py_neuromodulation-0.0.4/py_neuromodulation/nm_kalmanfilter.py +0 -58
  183. py_neuromodulation-0.0.4/py_neuromodulation/nm_linelength.py +0 -33
  184. py_neuromodulation-0.0.4/py_neuromodulation/nm_mne_connectivity.py +0 -112
  185. py_neuromodulation-0.0.4/py_neuromodulation/nm_nolds.py +0 -93
  186. py_neuromodulation-0.0.4/py_neuromodulation/nm_normalization.py +0 -214
  187. py_neuromodulation-0.0.4/py_neuromodulation/nm_oscillatory.py +0 -448
  188. py_neuromodulation-0.0.4/py_neuromodulation/nm_run_analysis.py +0 -435
  189. py_neuromodulation-0.0.4/py_neuromodulation/nm_settings.json +0 -338
  190. py_neuromodulation-0.0.4/py_neuromodulation/nm_settings.py +0 -68
  191. py_neuromodulation-0.0.4/py_neuromodulation/nm_sharpwaves.py +0 -401
  192. py_neuromodulation-0.0.4/py_neuromodulation/nm_stream_abc.py +0 -218
  193. py_neuromodulation-0.0.4/py_neuromodulation/nm_stream_offline.py +0 -359
  194. py_neuromodulation-0.0.4/py_neuromodulation/utils/_logging.py +0 -24
  195. py_neuromodulation-0.0.4/requirements_rtd.txt +0 -34
  196. py_neuromodulation-0.0.4/tests/__init__.py +0 -0
  197. py_neuromodulation-0.0.4/tests/conftest.py +0 -117
  198. py_neuromodulation-0.0.4/tests/test_all_features.py +0 -63
  199. py_neuromodulation-0.0.4/tests/test_bispectra.py +0 -70
  200. py_neuromodulation-0.0.4/tests/test_bursts.py +0 -105
  201. py_neuromodulation-0.0.4/tests/test_feature_sampling_rates.py +0 -143
  202. py_neuromodulation-0.0.4/tests/test_fooof.py +0 -16
  203. py_neuromodulation-0.0.4/tests/test_multiprocessing.py +0 -58
  204. py_neuromodulation-0.0.4/tests/test_normalization_settings.py +0 -146
  205. py_neuromodulation-0.0.4/tests/test_osc_features.py +0 -424
  206. py_neuromodulation-0.0.4/tests/test_preprocessing_filter.py +0 -151
  207. py_neuromodulation-0.0.4/tests/test_sharpwave.py +0 -165
  208. py_neuromodulation-0.0.4/tests/test_target_channel_add.py +0 -100
  209. py_neuromodulation-0.0.4/tests/test_timing.py +0 -80
  210. py_neuromodulation-0.0.4/tox.ini +0 -16
  211. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/py_neuromodulation/ConnectivityDecoding/Automated Anatomical Labeling 3 (Rolls 2020).nii +0 -0
  212. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/py_neuromodulation/ConnectivityDecoding/mni_coords_cortical_surface.mat +0 -0
  213. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/py_neuromodulation/ConnectivityDecoding/mni_coords_whole_brain.mat +0 -0
  214. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/py_neuromodulation/ConnectivityDecoding/rmap_func_all.nii +0 -0
  215. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/py_neuromodulation/ConnectivityDecoding/rmap_struc.nii +0 -0
  216. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/py_neuromodulation/data/sub-testsub/ses-EphysMedOff/ieeg/sub-testsub_ses-EphysMedOff_task-gripforce_run-0_ieeg.eeg +0 -0
  217. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/py_neuromodulation/grid_subcortex.tsv +0 -0
  218. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/py_neuromodulation/plots/STN_surf.mat +0 -0
  219. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/py_neuromodulation/plots/Vertices.mat +0 -0
  220. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/py_neuromodulation/plots/faces.mat +0 -0
  221. {py_neuromodulation-0.0.4 → py_neuromodulation-0.0.6}/py_neuromodulation/plots/grid.mat +0 -0
  222. {py_neuromodulation-0.0.4/py_neuromodulation/utils → py_neuromodulation-0.0.6/tests}/__init__.py +0 -0
@@ -0,0 +1,57 @@
1
+ name: docs_pages_workflow
2
+
3
+ on:
4
+ push:
5
+ branches: [ main ]
6
+
7
+ jobs:
8
+
9
+ build_docs_job:
10
+ runs-on: ubuntu-latest
11
+ env:
12
+ GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
13
+
14
+ steps:
15
+ - name: Checkout
16
+ uses: actions/checkout@v2.3.4
17
+
18
+ - name: Install and cache Linux packages
19
+ if: ${{ runner.os == 'Linux' }}
20
+ uses: tecolicom/actions-use-apt-tools@v1
21
+ with:
22
+ tools: binutils qtbase5-dev qt5-qmake libpugixml1v5
23
+
24
+ - name: Set up Python with uv
25
+ uses: drivendataorg/setup-python-uv-action@v1
26
+ with:
27
+ python-version: '3.10'
28
+ cache: packages
29
+ cache-dependency-path: pyproject.toml
30
+
31
+ - name: Install dependencies
32
+ run: |
33
+ uv pip install .[docs]
34
+
35
+ - name: make the sphinx docs
36
+ run: |
37
+ make -C docs clean
38
+ make -C docs html
39
+
40
+ - name: Init new repo in dist folder and commit generated files
41
+ run: |
42
+ cd docs/build/html/
43
+ git init
44
+ touch .nojekyll
45
+ git add -A
46
+ git config --local user.email "github-actions[bot]@users.noreply.github.com"
47
+ git config --local user.name "github-actions[bot]"
48
+ git commit -m 'deploy'
49
+ git config --global --add safe.directory /github/workspace/docs/build/html
50
+
51
+ - name: Force push to destination branch
52
+ uses: ad-m/github-push-action@master
53
+ with:
54
+ github_token: ${{ secrets.GITHUB_TOKEN }}
55
+ branch: gh-pages
56
+ force: true
57
+ directory: ./docs/build/html
@@ -0,0 +1,39 @@
1
+ name: Publish Python Package
2
+
3
+ on:
4
+ push:
5
+ tags:
6
+ - 'v*' # Only trigger on tag pushes like v1.0.0
7
+
8
+ jobs:
9
+ publish:
10
+ runs-on: ubuntu-latest
11
+
12
+ steps:
13
+ - name: Checkout code
14
+ uses: actions/checkout@v3
15
+
16
+ - name: Set up Python
17
+ uses: actions/setup-python@v4
18
+ with:
19
+ python-version: '3.11' # Specify your Python version
20
+
21
+ - name: Install dependencies
22
+ run: |
23
+ python -m pip install --upgrade pip
24
+ pip install build
25
+
26
+ - name: Build package
27
+ run: python -m build
28
+
29
+ - name: Publish to PyPI
30
+ uses: pypa/gh-action-pypi-publish@v1.10.0
31
+ with:
32
+ password: ${{ secrets.PYPI_API_TOKEN }}
33
+
34
+ - name: Create GitHub release
35
+ uses: softprops/action-gh-release@v1
36
+ with:
37
+ files: dist/*
38
+ env:
39
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -0,0 +1,59 @@
1
+ name: Tests
2
+ on:
3
+ push:
4
+ branches:
5
+ - main
6
+ - "**"
7
+ paths-ignore:
8
+ - "docs/**"
9
+ - "*.md"
10
+ - "*.rst"
11
+ - "*.txt"
12
+ pull_request:
13
+ branches:
14
+ - main
15
+ - "*.x"
16
+ paths-ignore:
17
+ - "docs/**"
18
+ - "*.md"
19
+ - "*.rst"
20
+ - "*.txt"
21
+ jobs:
22
+ tests:
23
+ name: ${{ matrix.platform.name }} Python ${{ matrix.python }}
24
+ runs-on: ${{ matrix.platform.os }}
25
+ strategy:
26
+ fail-fast: false
27
+ matrix:
28
+ platform:
29
+ - os: ubuntu-latest
30
+ name: Linux
31
+ - os: macos-latest
32
+ name: MacOS
33
+ - os: windows-latest
34
+ name: Windows
35
+ python:
36
+ - "3.11"
37
+ - "3.12"
38
+ steps:
39
+ - uses: actions/checkout@v4
40
+ - name: Install and cache Linux packages
41
+ if: ${{ runner.os == 'Linux' }}
42
+ uses: awalsh128/cache-apt-pkgs-action@latest
43
+ with:
44
+ packages: binutils qtbase5-dev qt5-qmake libpugixml1v5
45
+ - name: Install uv
46
+ uses: astral-sh/setup-uv@v3
47
+ with:
48
+ version: "0.4.12"
49
+ enable-cache: true
50
+ cache-dependency-glob: "**/pyproject.toml"
51
+ - name: Install Python and dependencies
52
+ run: |
53
+ uv python install ${{ matrix.python }}
54
+ uv venv
55
+ uv pip install .[test]
56
+ - name: Run tests
57
+ run: |
58
+ ${{ (runner.os == 'Windows' && '.venv\Scripts\activate') || 'source .venv/bin/activate' }}
59
+ pytest -n auto tests/
@@ -1,175 +1,196 @@
1
- # Byte-compiled / optimized / DLL files
2
- __pycache__/
3
- *.py[cod]
4
- *$py.class
5
-
6
- # C extensions
7
- *.so
8
-
9
- # Distribution / packaging
10
- .pypirc/
11
- .Python
12
- build/
13
- develop-eggs/
14
- dist/
15
- downloads/
16
- eggs/
17
- .eggs/
18
- lib/
19
- lib64/
20
- parts/
21
- sdist/
22
- var/
23
- wheels/
24
- pip-wheel-metadata/
25
- share/python-wheels/
26
- *.egg-info/
27
- .installed.cfg
28
- *.egg
29
- MANIFEST
30
-
31
- # PyInstaller
32
- # Usually these files are written by a python script from a template
33
- # before PyInstaller builds the exe, so as to inject date/other infos into it.
34
- *.manifest
35
- *.spec
36
-
37
- # Installer logs
38
- pip-log.txt
39
- pip-delete-this-directory.txt
40
-
41
- # Unit test / coverage reports
42
- htmlcov/
43
- .tox/
44
- .nox/
45
- .coverage
46
- .coverage.*
47
- .cache
48
- nosetests.xml
49
- coverage.xml
50
- *.cover
51
- *.py,cover
52
- .hypothesis/
53
- .pytest_cache/
54
-
55
- # Translations
56
- *.mo
57
- *.pot
58
-
59
- # Django stuff:
60
- *.log
61
- local_settings.py
62
- db.sqlite3
63
- db.sqlite3-journal
64
-
65
- # Flask stuff:
66
- instance/
67
- .webassets-cache
68
-
69
- # Scrapy stuff:
70
- .scrapy
71
-
72
- # Sphinx documentation
73
- docs/_build/
74
-
75
- # PyBuilder
76
- target/
77
-
78
- # Jupyter Notebook
79
- .ipynb_checkpoints
80
-
81
- # IPython
82
- profile_default/
83
- ipython_config.py
84
-
85
- # pyenv
86
- .python-version
87
-
88
- # pipenv
89
- # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
90
- # However, in case of collaboration, if having platform-specific dependencies or dependencies
91
- # having no cross-platform support, pipenv may install dependencies that don't work, or not
92
- # install all needed dependencies.
93
- #Pipfile.lock
94
-
95
- # PEP 582; used by e.g. github.com/David-OConnor/pyflow
96
- __pypackages__/
97
-
98
- # Celery stuff
99
- celerybeat-schedule
100
- celerybeat.pid
101
-
102
- # SageMath parsed files
103
- *.sage.py
104
-
105
- # Environments
106
- .env
107
- .venv
108
- env/
109
- venv/
110
- ENV/
111
- env.bak/
112
- venv.bak/
113
-
114
- # Visual Studio Code
115
- .vscode
116
-
117
- # PyCharm
118
- .idea
119
-
120
- # Spyder project settings
121
- .spyderproject
122
- .spyproject
123
-
124
- # Rope project settings
125
- .ropeproject
126
-
127
- # mkdocs documentation
128
- /site
129
-
130
- # mypy
131
- .mypy_cache/
132
- .dmypy.json
133
- dmypy.json
134
-
135
- # Pyre type checker
136
- .pyre/
137
-
138
- # Ignore pickles
139
- *.pkl
140
- **/*.pkl
141
- *.p
142
-
143
- .pdf
144
-
145
- sphinx/sub/*
146
-
147
- docs/build/*
148
- docs/source/_build/*
149
- docs/previous/*
150
- docs/source/auto_examples/*
151
- docs/source/data/*
152
-
153
- examples/data/derivatives/*
154
- examples/other_examples/*
155
-
156
- examples/sub/*
157
- examples/utils/*
158
-
159
- sub/
160
-
161
- py_neuromodulation/data/derivatives/*
162
-
163
- requirements.lock
164
- requirements-dev.lock
165
-
166
- .python-version
167
-
168
- py_neuromodulation/ConnectivityDecoding/connectome_folder/*
169
-
170
- plot_0_first_demo.py
171
-
172
- requirements.lock
173
- requirements-dev.lock
174
-
175
- plot_1_example_BIDS.py
1
+ # Byte-compiled / optimized / DLL files
2
+ __pycache__/
3
+ *.py[cod]
4
+ *$py.class
5
+
6
+ # Distribution / packaging
7
+ .pypirc/
8
+ .Python
9
+ build/
10
+ develop-eggs/
11
+ dist/
12
+ downloads/
13
+ eggs/
14
+ .eggs/
15
+ lib/
16
+ lib64/
17
+ parts/
18
+ sdist/
19
+ var/
20
+ wheels/
21
+ pip-wheel-metadata/
22
+ share/python-wheels/
23
+ *.egg-info/
24
+ .installed.cfg
25
+ *.egg
26
+ MANIFEST
27
+
28
+ # PyInstaller
29
+ # Usually these files are written by a python script from a template
30
+ # before PyInstaller builds the exe, so as to inject date/other infos into it.
31
+ *.manifest
32
+ *.spec
33
+
34
+ # Installer logs
35
+ pip-log.txt
36
+ pip-delete-this-directory.txt
37
+
38
+ # Unit test / coverage reports
39
+ htmlcov/
40
+ .tox/
41
+ .nox/
42
+ .coverage
43
+ .coverage.*
44
+ .cache
45
+ nosetests.xml
46
+ coverage.xml
47
+ *.cover
48
+ *.py,cover
49
+ .hypothesis/
50
+ .pytest_cache/
51
+ /test_data
52
+
53
+ # Translations
54
+ *.mo
55
+ *.pot
56
+
57
+ # Django stuff:
58
+ *.log
59
+ local_settings.py
60
+ db.sqlite3
61
+ db.sqlite3-journal
62
+
63
+ # Flask stuff:
64
+ instance/
65
+ .webassets-cache
66
+
67
+ # Scrapy stuff:
68
+ .scrapy
69
+
70
+ # Sphinx documentation
71
+ docs/_build/
72
+
73
+ # PyBuilder
74
+ target/
75
+
76
+ # Jupyter Notebook
77
+ .ipynb_checkpoints
78
+
79
+ # IPython
80
+ profile_default/
81
+ ipython_config.py
82
+
83
+ # pyenv
84
+ .python-version
85
+
86
+ # pipenv
87
+ # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
88
+ # However, in case of collaboration, if having platform-specific dependencies or dependencies
89
+ # having no cross-platform support, pipenv may install dependencies that don't work, or not
90
+ # install all needed dependencies.
91
+ #Pipfile.lock
92
+
93
+ # PEP 582; used by e.g. github.com/David-OConnor/pyflow
94
+ __pypackages__/
95
+
96
+ # Celery stuff
97
+ celerybeat-schedule
98
+ celerybeat.pid
99
+
100
+ # SageMath parsed files
101
+ *.sage.py
102
+
103
+ # Environments
104
+ .env
105
+ .venv
106
+ env/
107
+ venv/
108
+ ENV/
109
+ env.bak/
110
+ venv.bak/
111
+
112
+ # Visual Studio Code
113
+ .vscode
114
+
115
+ # PyCharm
116
+ .idea
117
+
118
+ # Spyder project settings
119
+ .spyderproject
120
+ .spyproject
121
+
122
+ # Rope project settings
123
+ .ropeproject
124
+
125
+ # mkdocs documentation
126
+ /site
127
+
128
+ # mypy
129
+ .mypy_cache/
130
+ .dmypy.json
131
+ dmypy.json
132
+
133
+ # Pyre type checker
134
+ .pyre/
135
+
136
+ # Ignore pickles
137
+ *.pkl
138
+ **/*.pkl
139
+ *.p
140
+
141
+ .pdf
142
+
143
+ sphinx/sub/*
144
+
145
+ docs/build/*
146
+ docs/source/_build/*
147
+ docs/previous/*
148
+ docs/source/auto_examples/*
149
+ docs/source/data/*
150
+
151
+ examples/data/derivatives/*
152
+ examples/other_examples/*
153
+ examples/plot_7_lsl_example.ipynb
154
+ examples/lange_n8.ipynb
155
+
156
+ examples/sub/*
157
+ examples/utils/*
158
+ examples/temp_raw.fif
159
+
160
+ sub/
161
+
162
+ py_neuromodulation/data/derivatives/*
163
+
164
+ .python-version
165
+
166
+ py_neuromodulation/ConnectivityDecoding/connectome_folder/*
167
+
168
+ plot_0_first_demo.py
169
+ plot_1_example_BIDS.py
170
+ temp_raw.fif
171
+
172
+ requirements.lock
173
+ requirements-dev.lock
174
+
175
+ docs/source/bin/pandoc
176
+
177
+ docs/source/sg_execution_times.rst
178
+
179
+ figures_ucsf/*
180
+ catboost_info/*
181
+ out_per
182
+ .DS_Store
183
+
184
+ # Temp dev files
185
+ # Testing scripts
186
+ /*.py
187
+ # Stream output
188
+ /*.csv
189
+ /*.db
190
+ /*.sqlite
191
+ # Profiler files
192
+ /*.prof
193
+ /profiling/*
194
+
195
+ gui_dev/node_modules/*
196
+ test/data/*
@@ -1,21 +1,21 @@
1
- MIT License
2
-
3
- Copyright (c) 2021 Interventional Cognitive Neuromodulation - Neumann Lab Berlin
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.
1
+ MIT License
2
+
3
+ Copyright (c) 2021 Interventional Cognitive Neuromodulation - Neumann Lab Berlin
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: py_neuromodulation
3
- Version: 0.0.4
3
+ Version: 0.0.6
4
4
  Summary: Real-time analysis of intracranial neurophysiology recordings.
5
5
  Project-URL: bugtracker, https://github.com/neuromodulation/py_neuromodulation/issues
6
6
  Project-URL: repository, https://github.com/neuromodulation/py_neuromodulation
@@ -33,40 +33,48 @@ Classifier: Development Status :: 2 - Pre-Alpha
33
33
  Classifier: License :: OSI Approved :: MIT License
34
34
  Classifier: Programming Language :: Python
35
35
  Classifier: Topic :: Software Development :: Libraries :: Python Modules
36
- Requires-Python: >=3.10
37
- Requires-Dist: black>=24.2.0
38
- Requires-Dist: filterpy>=1.4.5
36
+ Requires-Python: >=3.11
39
37
  Requires-Dist: fooof
40
- Requires-Dist: hatch>=1.9.4
41
- Requires-Dist: imbalanced-learn
42
- Requires-Dist: ipython
43
38
  Requires-Dist: joblib>=1.3.2
44
- Requires-Dist: matplotlib>=3.3.4
39
+ Requires-Dist: matplotlib>=3.9.0
45
40
  Requires-Dist: mne
46
41
  Requires-Dist: mne-bids>=0.8
47
42
  Requires-Dist: mne-connectivity
43
+ Requires-Dist: mne-lsl>=1.2.0
48
44
  Requires-Dist: mrmr-selection
49
45
  Requires-Dist: nolds
50
- Requires-Dist: notebook
51
46
  Requires-Dist: numpy>=1.21.2
52
- Requires-Dist: pandas>=1.2.2
53
- Requires-Dist: pip
47
+ Requires-Dist: pandas>=2.0.0
54
48
  Requires-Dist: pyarrow>=14.0.2
55
- Requires-Dist: pybids
56
- Requires-Dist: pybispectra>=1.0.0
57
- Requires-Dist: pynput
49
+ Requires-Dist: pybispectra>=1.2.0
50
+ Requires-Dist: pydantic>=2.7.3
58
51
  Requires-Dist: pyparrm
59
- Requires-Dist: pytest>=8.0.2
60
- Requires-Dist: scikit-image
52
+ Requires-Dist: pyqt5
61
53
  Requires-Dist: scikit-learn>=0.24.2
62
54
  Requires-Dist: scikit-optimize
63
55
  Requires-Dist: scipy>=1.7.1
64
56
  Requires-Dist: seaborn>=0.11
65
- Requires-Dist: wget
66
57
  Provides-Extra: dev
67
- Requires-Dist: black; extra == 'dev'
68
- Requires-Dist: pytest; extra == 'dev'
58
+ Requires-Dist: notebook; extra == 'dev'
69
59
  Requires-Dist: pytest-cov; extra == 'dev'
60
+ Requires-Dist: pytest-sugar; extra == 'dev'
61
+ Requires-Dist: pytest>=8.0.2; extra == 'dev'
62
+ Requires-Dist: ruff; extra == 'dev'
63
+ Provides-Extra: docs
64
+ Requires-Dist: notebook; extra == 'docs'
65
+ Requires-Dist: numpydoc; extra == 'docs'
66
+ Requires-Dist: pydata-sphinx-theme; extra == 'docs'
67
+ Requires-Dist: pytest-cov; extra == 'docs'
68
+ Requires-Dist: pytest-sugar; extra == 'docs'
69
+ Requires-Dist: pytest>=8.0.2; extra == 'docs'
70
+ Requires-Dist: recommonmark; extra == 'docs'
71
+ Requires-Dist: ruff; extra == 'docs'
72
+ Requires-Dist: sphinx; extra == 'docs'
73
+ Requires-Dist: sphinx-gallery; extra == 'docs'
74
+ Requires-Dist: sphinx-togglebutton; extra == 'docs'
75
+ Provides-Extra: test
76
+ Requires-Dist: pytest-xdist; extra == 'test'
77
+ Requires-Dist: pytest>=8.0.2; extra == 'test'
70
78
  Description-Content-Type: text/x-rst
71
79
 
72
80
  py_neuromodulation
@@ -111,23 +119,10 @@ py_neuromodulation requires at least python 3.10. For installation you can use p
111
119
 
112
120
  pip install py-neuromodulation
113
121
 
114
-
115
- We recommend however installing the package using `rye <https://rye-up.com/guide/installation/>`_:
116
-
117
- .. code-block::
118
-
119
- git clone https://github.com/neuromodulation/py_neuromodulation.git
120
- rye pin 3.11
121
- rye sync
122
-
123
- And then activating the virtual environment e.g. in Windows using:
122
+ Alternatively you can also install the package in a conda environment:
124
123
 
125
124
  .. code-block::
126
125
 
127
- .\.venv\Scripts\activate
128
-
129
- Alternatively you can also install the package in a conda environment:
130
-
131
126
  conda create -n pynm-test python=3.11
132
127
  conda activate pynm-test
133
128