Recent Releases of NeuroCAPs
NeuroCAPs - 0.35.1
🐛 Fixes
- Properly set data type in nifti image header to address floating point issues for certain atlases when converting CAP vectors to niftis and saving image.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.35.0...0.35.1
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 5 months ago
NeuroCAPs - 0.35.0
- JOSS Version ### 🐛 Fixes
- Ensures mutability by using deepcopy in
CAPandTimeseriesExtractorto not bypass validation - Accounts for case when duration is coded as 0 in event timing files as 0 in BIDS can indicate impulse.
New Contributors
- @yibeichan made their first contribution in https://github.com/donishadsmith/neurocaps/pull/63
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.34.3...0.35.0
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 5 months ago
NeuroCAPs - 0.34.3
🚀 New/Added
- Added
n_coresandprogress_barparameters tosimulate_bids_dataset. ### 🐛 Fixes - Incorrect session ID also raises a
BIDSQueryError.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.34.2...0.34.3
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 5 months ago
NeuroCAPs - 0.34.0
♻ Changed
PlotDefaultsis now apart of the public API and has a new method (available_methods).- Documentation for plot related parameters moved to
PlotDefaults. - For correlation and transition matrices plot, "annot" is now True by default.
- Renamed "plottingutils.py" to "plotutils.py".
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.33.1...0.34.0
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 5 months ago
NeuroCAPs - 0.33.0.post1
📖 Documentation
- Updates to remove old information in parameters (type hints and strings).
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.33.0...0.33.0.post1
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 6 months ago
NeuroCAPs - 0.33.0
🚀 New/Added
plot_output_formatparameter added to replaceas_pickle,as_json, andas_html- This parameter is added under
output_dir, which changes signature ordering ### ♻ Changed - Significant changes in ordering of signature parameters for better grouping
- Removal of certain parameters to clean up signatures:
flush(inTimeseriesExtractor): remnant of print but logging is used nowfwhm(inCAP.caps2niftisandCAP.caps2surf, parameter still available inTimeseriesExtractorto apply smoothing during timeseries extraction; however smoothing is not needed for statistical maps)fslr_giftis_dict(inCAP.caps2surf)
- Changed default in
CAP.caps2plotfrom "outer_product" to "heatmap" ### 📖 Documentation - Only version specifiers from >= 0.33.0 are shown. Previous specifiers are archived in the 0.32.4 readthedocs.io
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.32.4...0.33.0
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 6 months ago
NeuroCAPs - 0.32.2
🚀 New/Added
- Create
fetch_preset_parcel_approachto retrieve preset parcellations (HCPex and 4S) from OSF - Parcel approaches have informational metadata keys ### 🐛 Fixes
- Fixed blank figure issue when saving the cluster performance
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.32.1...0.32.2
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 6 months ago
NeuroCAPs - 0.32.0
🚀 New/Added
- Created "generatecustomparcelapproach" to help create a "Custom" `parcelapproach` for a parcellations metadata file. ### 🔧 Refactoring
- "_utils" is now "utils". Private file in the "utils" folder now start with "underscore".
- ".utils.parcellation.py" now "utils.parcellationvalidation.py" ### 📖 Documentation
- If checking documentation from an IDE, links are provided for the typing definition.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.31.1...0.32.0
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 6 months ago
NeuroCAPs - 0.31.1
🐛 Fixes
- When computing metrics in
CAP.calculate_metrics, internally, the dataframes are no longer built one row at a time. All data is collected and the dataframe is created once.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.31.0...0.31.1
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 6 months ago
NeuroCAPs - 0.31.0
🔧 Refactoring
- Significant internal refactoring to clean the code in the public API, changes include:
- Moving files in
neurocaps._utils.extractionandneurocaps._utils.analysisto internal folders inneurocaps.extractionandneurocaps.analysis - Changing internal function names to be more descriptive
- Moving certain internal functions in
TimeseriesExtractorandCAPinto separate internal modules - Changing internal file names ### ♻ Changed
- Moving files in
- Improved the default region names (changing how nodes are grouped) for the AAL atlas to improve granularity.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.30.0...0.31.0
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 6 months ago
NeuroCAPs - 0.30.0
🚀 New/Added
- Added support for parcellations with non-lateralized nodes in the custom parcel_approach.
- Added the addcustomnode_names keyword argument to
CAP.caps2plot()to control the display of node labels. ### ♻ Changed - Removed the
hemisphere_labelskeyword argument from CAP.caps2plot(). This is replaced byadd_custom_node_names. - Node labels on heatmaps and outer product plots are now disabled by default.
add_custom_node_names=Trueto can be used to display them. ### 🐛 Fixes - Fixed an issue where whitespace in plot filenames was not correctly replaced with underscores.
- Improved the node labeling logic for heatmaps and outer product plots. Labels are now applied correctly even when the input parcellation has all nodes of one hemisphere ordered before the other.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.29.7...0.30.0
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 7 months ago
NeuroCAPs - 0.29.7
🐛 Fixes
- For
TimeseriesExtractor, check and filtering added forconfound_nameswhen wildcard for prefix is used to ensure only that the asterisk is at the end since only prefix wildcards are supported. Also checks for case when only "*" is used since it would select all columns.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.29.6...0.29.7
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 7 months ago
NeuroCAPs - 0.29.6
🚀 New/Added
methodparameter added toCAP.caps2corrto allow spearman or pearson correlation to be computed. By default pearson is computed for backwards compatibility.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.29.5...0.29.6
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 7 months ago
NeuroCAPs - 0.29.5
🚀 New/Added
- Adds "method" key to
knn_dict, which defaults to majority vote KNN approach but allows for distance weighted KNN to be used.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.29.4...0.29.5
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 7 months ago
NeuroCAPs - 0.29.4
🐛 Fixes
- Fixes and improve type hints for public API and some private functions
- Updates plotly restriction to allow 6.1.1 to be downloaded
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.29.3...0.29.4
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 7 months ago
NeuroCAPs - 0.29.3
♻ Changed
- Restricts kaleido version to less than 1.0.0, which will have to be tested to ensure it is compatible on Windows and works similarly on non-Windows machines.
- Stays with plotly versions less than 6.1.0 since versions greater than 6.1.0 may require kaleido versions >= 1.0.0.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.29.2...0.29.3
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 8 months ago
NeuroCAPs - 0.29.2
📖 Documentation
- Adds documentation to properties to be viewed in IDEs instead of the definitions only being in the public class. ### 🐛 Fixes
- Adds a small check for
parallel_log_config, since thequeuekey is mandatory. - Changes plotly version to "!=6.1.0" instead of "<6.1.0" as there are several issues raised
about the
write_imageissue.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.29.1...0.29.2
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 8 months ago
NeuroCAPs - 0.29.0
🚀 New/Added
- Adds
return_cap_labelsfunction to public API, which used to be an internal function. This allows CAP assignments to be returned directly. ### 🐛 Fixes - Adds temporary version restriction for plotly to not install 6.1.0 since it currently breaks image saving function. Once fixed, will allow versions after 6.1.0.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.28.6...0.29.0
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 8 months ago
NeuroCAPs - 0.28.6
♻ Changed
- Backwards compatible change for
CAP.calculate_metrics, which changes the default metrics from None to("temporal_fraction", "persistence", "counts", "transition_frequency"), Still retains the same behavior where None defaults to "temporalfraction", "persistence", "counts", and "transitionfrequency". Change done to enhance clarity ### 📖 Documentation - Minor language fixes. Fix to example in
CAP.caps2radar, which hadlow_amp = high_amp = np.where(cap_1_cluster_centroid < 0, -cap_1_cluster_centroid, 0)instead oflow_amp = np.where(cap_1_cluster_centroid < 0, -cap_1_cluster_centroid, 0)### 🐛 Fixes - If
fslr_giftis_dictinCAP.caps2surfis supplied, thencapsis not a required attribute - Stops invalid kwargs warning in
CAP.get_capsforSandmax_nbytes
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.28.5...0.28.6
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 8 months ago
NeuroCAPs - 0.28.5
🚀 New/Added
- Add
clear_groupsfunction toCAP - Add
max_nbyteskwarg toCAP.get_caps. ### ♻ Changed - Removes private
_IOclass
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.28.4...0.28.5
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 8 months ago
NeuroCAPs - 0.28.4
🐛 Fixes
- More robust handling of certain edge cases for event timing conversion. Instead of having
Old Computation:
python
adjusted_onset = onset - slice_time_ref * tr
adjusted_onset = max([0, adjusted_onset])
start_scan = int(adjusted_onset / tr) + condition_tr_shift
end_scan = math.ceil((adjusted_onset + duration) / tr) + condition_tr_shift
scans.extend(range(onset_scan, end_scan))
scans = sorted(list(set(scans)))
New Computation: ```python adjustedonset = conditiondf.loc[i, "onset"] - data.slice_ref * data.tr
Int is always the floor for positive floats
onsetscan = int(adjustedonset / data.tr) + data.trshift endscan = math.ceil((adjustedonset + conditiondf.loc[i, "duration"]) / data.tr) + data.tr_shift
Avoid accidental negative indexing
onsetscan = max([0, onsetscan]) endscan = max([0, endscan]) scans.extend(range(onsetscan, endscan)) ```
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.28.3...0.28.4
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 8 months ago
NeuroCAPs - 0.28.3
🐛 Fixes
- Use "all" to ensure all figures are closed for matplotlib objects and prevent unnecessary memory consumption
whenever
show_figsis False.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.28.2...0.28.3
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 8 months ago
NeuroCAPs - 0.28.2
♻ Changed
- Changes and refactors for internal functions and classes related to plotting and IO:
- "plottingdefaults.py" changed to "plottingutils.py"
- "heatmaputils.py" deleted and functions are now stored in _MatrixVisualizer class in "plottingutils.py"
- Shared plotting function now stored in PlotFuncs to increase reusability
- "pickle_utils.py" changed to "io.py"
- Created IO class to store IO operations
- Removed some internal methods in
CAPthat are either generalized IO operations or generalized plotting functions - Logged IO related warnings about not specifying an output directory when specifying a filenames only comes from "io.py" instead of various modules ### 🐛 Fixes
- Support compressed serialized files
- Fix serialization of timeseries dict to use Joblib instead of standard pickle
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.28.1...0.28.2
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 8 months ago
NeuroCAPs - 0.28.1
- Primarily refactoring to improve readability. Also includes internal functions that can be used independently for implementation purposes or unit testing. ### 🐛 Fixes
- Guarantees the returned dictionary from
CAP.calculate_metrics, will have keys in the same order as listed inmetrics.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.28.0...0.28.1
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 8 months ago
NeuroCAPs - 0.28.0
- Backwards compatible default changes (same default behavior):
- Changed default of
parcel_approachto None inTimeseriesExtractor, which defaults to Schaefer when None - Changed default of
metricsinCAP.calculate_metricsto None, which computes the transition frequency, temporal fraction, counts, and persistence when None
- Changed default of
- In pyproject.toml:
- The typing_extension package is no longer restricted to versions less than 3.11
- Python version restricted to 3.9 to 3.12 for now since only VTK >= 9.4 works with Python 3.13 and above and brainspace is currently only compatible with VTK < 9.4.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.27.0...0.28.0
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 8 months ago
NeuroCAPs - 0.27.0
🚀 New/Added
- To the QC report, added the number of dummy volumes, which is useful if the "auto" option is used ### ♻ Changed
- To the QC report, if either
fd_thresholdordummy_scansis None - 0 is now treated as Falsy for
fd_thresholdsince this is an impractical value anyway
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.26.10...0.27.0
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 8 months ago
NeuroCAPs - 0.26.10
- Final round to address mutability
♻ Changed
- For
TimeseriesExtractor, certain mutable parameters such asconfound_names,fd_threshold, anddummy_scansare copied to prevent un-intentional user changes that mutate these parameters without validation. - Also for
TimeseriesExtractorandCAPcertain properties return a deep copy. However, large properties such assubject_timeseriesandconcatenated_timeseriesreturn just a reference to prevent excessive memory usage.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.26.9...0.26.10
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 8 months ago
NeuroCAPs - 0.26.9
✨ Enhancement
- Improves stacking in
merge_dictsto make less memory intensive for larger datasets. - IO operations when pickles are given in
subject_timeseries_listformerge_dictsis only done once per call. Consequently, fixes issue if strings are given insubject_timeseries_listbut doesn't have the "pkl" extension since ".pkl", ".pickle", and ".joblib" are recognized.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.26.8...0.26.9
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 9 months ago
NeuroCAPs - 0.26.8
♻ Changed
- Exceptions no longer require message ### 🐛 Fixes
- In the
merge_dictsfunction, fixes issue a mutability issue where if a subject only has a single run, the memory address of the numpy array in the merged dict would be the same as the original input dict. Now deepcopy used to safeguard against any unintended side effects to the original input dictionaries.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.26.7...0.26.8
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 9 months ago
NeuroCAPs - 0.26.6
♻ Changed
- For str method, changed "Metadata" to "Current Object State" and made other minor tweaks. ### 🐛 Fixes
- Fixed a logged warning about condition event windows being out of bounds when
condition_tr_shiftis not used. Previously, the log message would never actually be logged. ### 📖 Documentation - Improved documentation about how the default class in
CAPis handles and added a logged message about this behavior. - Added doc string to str method.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.26.5...0.26.6
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 9 months ago
NeuroCAPs - 0.26.5
- Updates related to plotting and pickling
🚀 New/Added
- Several functions now include a
as_pickleparameter to save figures as pickle files. ForCAP.cas2radar, anas_jsonfile is added to saved plotly files in json format as opposed to pickle. This allows for further modifications of the plots outside of the functions. ### ♻ Changed - For parameters that except files as strings such as
subject_timeseriesandparcel_approach, recognized extensions are now ".pkl", ".pickle", and ".joblib", instead of just ".pkl". ### 🐛 Fixes - For file names in
TimeseriesExtractor.visualize_bold, the default file name saved with an additional "run-", this has been removed. - For file names in
CAP.caps2plot, groups with spaces saved with whitespace, now this whitespace is replaced with underscores ("_").
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.26.4...0.26.5
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 9 months ago
NeuroCAPs - 0.26.3
- Dependency fixes ### 🐛 Fixes
- Updates minimum dependencies in pyproject toml for functions to work
- Fixes error if using
knn_dictwith nilearn version < 0.11.0 due to using a parameter introduced in that version - Accounts for upcoming nilearn changes that add "Background" to the labels list to ensure proper plotting
- Accounts for future deprecation in
NiftiLabelsMaskerthat will transition from using kwargs to cleanargs in order to use `clean_extrapolate=False`
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.26.2...0.26.3
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 9 months ago
NeuroCAPs - 0.26.2
- Updates for
CAP### 🐛 Fixes - Reverse the mean and standardize properties returning None unless standardized to allow them to be cleared
any time
CAP.get_capsfunction is called since this can be an issue if standardizing is first requested, thenCAP.get_capsis ran again without standardizing and then the CAP metrics are computed. This would result in incorrect scaling for predicting CAP assignment for that particular scenario. Affected version 0.26.1.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.26.1...0.26.2
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 9 months ago
NeuroCAPs - 0.26.1
- Updates for
CAP### 🐛 Fixes - Fixed performance bottleneck when stacking large timeseries by only calling NumPy's
vstackonce per group instead of once per subject and run pair. Consequently, updates to the progress bar were made to reflect this. - If an invalid cluster selection method is called, the error now comes before concatenation instead of after.
- The mean and stdev properties now return None unless standardized is True or truthy instead of returning empty dictionaries when standardization is False.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.26.0...0.26.1
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 9 months ago
NeuroCAPs - 0.26.0
- Full source repository now archived on Zenodo, instead of just the pure source code ### 🚀 New/Added
- Added mean and standard deviation of framewise displacement of QC report, which are added at the beginning of the QC report. ### ♻ Changed
- In,
TimeseriesExtractor, default fordetrendchanged from True to False to avoid redundancy since the default behavior forconfound_namesincludes the cosine-basis regressors. This is also the default forNiftiLabelsMasker. - Now skips timeseries extraction if the number of confound regressors are equal to or greater than the length of the timeseries.
- For
CAP.caps2radar, the default forfillchanged from "none" to "toself" so that the traces of the radar plot are always filled in by default. - For
CAP, theregion_meansproperty now fully replaces theregion_capsproperty. The only difference is thatregion_meansincludes the region names themselves and better describes what it represents. - Version directives under 0.25.0 have been removed to clean the docs. These directives can still be viewed on 0.25.1 documentation.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.25.1...0.26.0
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 9 months ago
NeuroCAPs - 0.25.1
- Simple internal change, to explicitly change scaling to False for
NiftiLabelsMasker, in case the scaling approach changes in a future version or has been changed in a past version.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.25.0...0.25.1
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 9 months ago
NeuroCAPs - 0.25.0.post1
📖 Documentation
- Added documentation note
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.25.0...0.25.0.post1
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 9 months ago
NeuroCAPs - 0.25.0
♻ Changed
- For
TimeseriesExtractor,standardizeis no longer passed to Nilearn. Since standardizing is the final step in signal cleaning, it is now done within this package. Only standardizing using Bessel's correction (sample standard deviation) is used. This removes having to do external standardizing withneurocaps.analysis.standardizewhen censoring or extracting conditions and standardizing is True. - For
CAP, tqdm progress bar is now also displayed for the concatenation step whenprogress_baris True.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.24.7...0.25.0
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 9 months ago
NeuroCAPs - 0.24.7
- Minor refactoring ### 🚀 New/Added
- dummy_scans now accepts "auto" for convenience so that {"auto": True} does not need to be used.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.24.6...0.24.7
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 9 months ago
NeuroCAPs - 0.24.6
🚀 New/Added
- Added "MeanHighMotionLength" and "StdHighMotionLength" to qc report. ### ♻ Changed
- Qc report only produced when
fd_thresholdis specified, a valid and a confounds tsv file with "framewise displacement" column is found. Done since qc currently only focuses on framewise displacement. ### 🐛 Fixes Errors that could arise for some edge cases that usually won't be used - Setting
fd_thresholdand "outlier_percentage" to 0 are now recognized.
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 9 months ago
NeuroCAPs - 0.24.5
- Some Internal refactoring done to clean code
- Adds all to exceptions module for star import ### 🐛 Fixes
- Issue introduced in 0.24.3 specifically for condition, where if interpolation is requested and outlier percentage is used, the computation would only consider frames not being interpolated instead of all frames flagged for high motion. Added test too test suite to confirm behavior. ### 📖 Documentation
- Adds clarifications in documentation
- Adds links to docs for the type hints
- Adds basic docstring for many internal functions in _utils
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.24.4...0.24.5
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 9 months ago
NeuroCAPs - 0.24.4.post0
🐛 Fixes
- Broken zenodo badge.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.24.4...0.24.4.post0
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 9 months ago
NeuroCAPs - 0.24.3
- Internal refactoring ### 🚀 New/Added
- Added the
qcproperty and thereport_qcfunction inTimeseriesExtractor### 🐛 Fixes - Type hint for
output_dirinTimeseriesExtractor.timeseries_to_pickle### 📖 Documentation - Some docs cleaning.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.24.2...0.24.3
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 9 months ago
NeuroCAPs - 0.24.2
[0.24.2] - 2025-03-25
- Some internal refactoring and name changes to internal functions for clarity ### 🐛 Fixes
- Removes wheel in requirements since it is no longer needed for bdist_wheel since setuptools v70.1.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.24.1...0.24.2
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 9 months ago
NeuroCAPs - 0.24.1
🐛 Fixes
- Update license field to comply with PEP 639 and avoid deprecation.
- Upgraded to setuptools to 77.0.1, since this expression is supported in version 77.0.0 (which was yanked) ### 📖 Documentation
- Added some additional information in docs for user guiding.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.24.0...0.24.1
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 9 months ago
NeuroCAPs - 0.24.0
- Minor internal refactoring for private functions to improve readability.
- Some general improvements for better use of this package by others. ### 🚀 New/Added
- Added
NoElbowDetectedErrorfor instances where elbow method fails to detect elbow. ### ♻ Changed - Uses default for
mask_imgforNiftiLabelsMasker, which is None, as opposed to using masks queried from data. This better aligns with standard usage of the class and the parcellation serves as a mask already and is redundant especially when atlas and data are registered to the same space. - In
TimeseriesExtractor.visualize_bold(),runno longer needs to be specified if the given subject only has a single run.
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 9 months ago
NeuroCAPs - 0.23.8.post1
📖 Documentation
- Adds additional documentation clarity and emphasis.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.23.8.post0...0.23.8.post1
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 10 months ago
NeuroCAPs - 0.23.8.post0
📖 Documentation
- Fixes improper documentation rendering in IDE's
- Streamlines documentation
To tag significant documentation change
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.23.8...0.23.8.post0
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 10 months ago
NeuroCAPs - 0.23.6
🚀 New/Added
- Add type hints to all internal classes; minor code cleaning.
- Use new types for subject timeseries and parcellations throughout docs.
♻ Changed
- Change some internal parameters for the private
_Dataclass such asscrub_lim->out_percent,fd->fd_thresh, andshift->tr_shift. Done for clarity.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.23.5...0.23.6
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 10 months ago
NeuroCAPs - 0.23.4
- Primarily some internal refactoring and API docs updates:
- Some refactoring to reduce some code complexity.
- Internal code for public classes only use private attributes to separate it from public properties. Exception for private getter classes that are inherited public classes.
♻ Changed
- Internal function changed from
_create_regionstocompute_region_means. - Internal
CAP._raise_errorfunction changed slightly to accept attribute names, which are preceded by the underscore instead of properties. Done so that their is a separation between the internal private attributes and public properties. - Property change from
region_capstoregion_meansand now includes "Regions" key. For backward compatibility, the oldregion_capsbehavior is still available.
📖 Documentation
- Name change from "neurocaps" to "NeuroCAPs" in documentation only. Package name to remain "neurocaps" for compliance with PEP 8.
- Additional documentation fixes to enhance clarity.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.23.3...0.23.4
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 10 months ago
NeuroCAPs - 0.23.3
✨ Enhancement
- Improved error handling for custom parcel approaches. The structure of the sub-keys are validated to prevent errors due to incorrect structure down the pipeline.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.23.2...0.23.3
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 10 months ago
NeuroCAPs - 0.23.2
♻ Changed
- Minor improvements to str call for clarity.
- Added optional dependencies for benchmarking and cleaned repeating optional dependencies.
- Created separate static internal function for computing cosine similarity between the 1D region mask and high/low amplitude of the CAP vector.
What's Changed
- Update codecov/codecov-action action to v5.4.0 by @renovate in https://github.com/donishadsmith/neurocaps/pull/15
- Update codecov/codecov-action action to v5.4.0 by @renovate in https://github.com/donishadsmith/neurocaps/pull/17
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.23.1...0.23.2
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 10 months ago
NeuroCAPs - 0.23.1
- Minor improvements in how run IDs are intersected to prevent errors in rare cases. ### 🐛 Fixes
- Added pytest-cov and pre-commit as optional dependencies
- Fix case in version 0.23.0 when
confound_namesis None butn_acompcor_separateis specified, which resulted in the no acompcor components being included for nuisance regression. - Also, add warning is no cosine regressors are included in
confound_namesbut the following is detected:n_acompcor_separatespecified- "acompcor" or "tcompcor" included in
confound_names
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.23.0...0.23.1
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 10 months ago
NeuroCAPs - 0.23.0
- Updates pertain to
TimeseriesExtractor### 🚀 New/Added - Added a new key to
fd_thresholdfor optional cubic spline interpolation of censored volumes not at the beginning or end of the timeseries and is only done after nuisance regression and parcellation. By default, interpolation is not done and must explicitly be set to True. ### ♻ Changed - Default for
confounds_nameschanged from None to"basic". The"basic"option now performs the same functionality asconfound_names=Nonedid in previous versions. - Ordering of some
self.signal_clean_infoparameters changed. ### 🐛 Fixes - Raises ValueError when
use_confounds=Falsebutfd_threshold,n_acompcor_separate, or ``dummy_scans = {"auto": True} is specified. IMPORTANT: - Fixed issue that occured only when
n_acompcor_separateis None (default), which resulted in all acompcor regressors are selected from the confounds metadata due to list slicing issue[0:None]. Not an issue whenn_acompcor_separateis not None or the preproccesing pipeline directory did not have a confounds json file. - Overall improved error handling.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.22.2...0.23.0
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 10 months ago
NeuroCAPs - 0.22.2
🚀 New/Added
- Added new "exceptions" module containing the
BIDSQueryError. ### 📖 Documentation BIDSQueryErrornow documented.- Updated doc strings to redirect to documentation about directory structure/entities.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.22.1...0.22.2
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 10 months ago
NeuroCAPs - 0.22.0
♻ Changed
- Change in internal logic for condition to not add plus one to the duration scan index
(
scans = range(start, end + 1)->scans = range(start, end)) to reduce potential condition spillover in certain task designs such as rapid events. ### 📖 Documentation - Remove version change directives under 0.19.0 to clean up docs.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.21.8...0.22.0
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 11 months ago
NeuroCAPs - 0.21.8
🚀 New/Added
CAPandTimeseriesExtractorclasses now have defined string dunder methods that return specific metadata.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.21.7...0.21.8
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 11 months ago
NeuroCAPs - 0.21.7
🐛 Fixes
- Fixed documentation rendering issues in VSCode. ### 📖 Documentation
- Cleaned documentation in some functions. ### 🐳 Docker
- Updated image in DockerHub to latest version.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.21.6...0.21.7
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 11 months ago
NeuroCAPs - 0.21.6
🐛 Fixes
CAP.outer_productsproperty now no longer returns None when it is not None. ### 🐳 Docker- Updated image in DockerHub to latest version.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.21.5...0.21.6
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 11 months ago
NeuroCAPs - 0.21.5
🚀 New/Added
- Added new
progress_barparameter toCAP.calculate_metrics,CAP.caps2niftis,CAP.caps2surf,CAP.get_caps, andTimeseriesExtractor.get_boldto display tqdm progress bars. ### 📖 Documentation - Cleans version change/version added directives and references for versions under 0.19.0 to clean up documentation.
- Additional minor documentation cleaning. ### 🐳 Docker
- Updated image in DockerHub to latest version.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.21.4...0.21.5
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 11 months ago
NeuroCAPs - 0.21.4
🐛 Fixes
- Fix issue in "counts" computation in
CAP.calculate_metricsfor case where no TRs are assigned to a specific label/CAP. Instead of "counts" being 0 in this case, it would be a 1. Issue did not affect the other metrics ("temporal fraction", "persistence", etc), which would correctly be 0 in such cases.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.21.3...0.21.4
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 11 months ago
NeuroCAPs - 0.21.3
🐛 Fixes
- Added ipywidgets in optional dependencies for a better experience with the "openneuro_demo" Jupyter notebook.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.21.2...0.21.3
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 12 months ago
NeuroCAPs - 0.21.2
🐛 Fixes
- Fixes warning about ignoring mandatory keys in
fd_thresholdanddummy_scans. - Also adds check to ensure that the "outlier_percentage" key is a float between 0 and 1.
- - Setuptools version pinned to 64.0 or greater.
What's Changed
- Configure Renovate by @renovate in https://github.com/donishadsmith/neurocaps/pull/2
- Update codecov/codecov-action action to v5 by @renovate in https://github.com/donishadsmith/neurocaps/pull/4
- Update actions/setup-python action to v5 by @renovate in https://github.com/donishadsmith/neurocaps/pull/10
- Update actions/checkout action to v4 by @renovate in https://github.com/donishadsmith/neurocaps/pull/9
New Contributors
- @renovate made their first contribution in https://github.com/donishadsmith/neurocaps/pull/2
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.21.1...0.21.2
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 12 months ago
NeuroCAPs - 0.21.1
🐛 Fixes
- Better type validation for
fd_thresholdanddummy_scans. ### 📖 Documentation - Slightly clearer documentation on the criteria used for
fd_threshold.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.21.0...0.21.1
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 12 months ago
NeuroCAPs - 0.21.0
🚀 New/Added
- Added a new parameter,
slice_time_refinTimeseriesExtractor.get_boldto allow onset to be subtracted byslice_time_ref * trif desired.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.20.0...0.21.0
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 12 months ago
NeuroCAPs - 0.20.0
🚀 New/Added
- Added new log message specifying the condition being extracted if
conditionis not None. - Added a new parameter,
condition_tr_shiftinTimeseriesExtractor.get_boldto allow a shift in the the starting and ending scan in TR units for a condition.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.19.4...0.20.0
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith 12 months ago
NeuroCAPs - 0.19.4
📖 Documentation
- Links are fixed in the documentation. ### 🐛 Fixes
- Fix indexing error for
visualize_boldifparcel_approach["Custom"]["nodes"]is a NumPy array instead of list. ### ♻ Changed - Internally, the verbose parameter is set to 0 for nilearn's
fetch_atlas_aalandfetch_atlas_schaefer. and the behavior is stated in the documentation. Cosine similarity in this case is assignednp.nan - When creating "regions" for the "Custom" parcel approach, both a list and range can be accepted. Previously, only lists were accepted.
List method:
python
parcel_approach["Custom"]["regions"] = {
"Primary Visual": {"lh": [0], "rh": [180]},
"Early Visual": {"lh": [1, 2, 3], "rh": [181, 182, 183]},
"Dorsal Stream Visual": {"lh": list(range(4, 10)), "rh": list(range(184, 190))},
"Ventral Stream Visual": {"lh": list(range(10, 17)), "rh": list(range(190, 197))},
"MT+ Complex": {"lh": list(range(17, 26)), "rh": list(range(197, 206))},
"SomaSens Motor": {"lh": list(range(26, 31)), "rh": list(range(206, 211))},
"ParaCentral MidCing": {"lh": list(range(31, 40)), "rh": list(range(211, 220))},
"Premotor": {"lh": list(range(40, 47)), "rh": list(range(220, 227))},
"Posterior Opercular": {"lh": list(range(47, 52)), "rh": list(range(227, 232))},
"Early Auditory": {"lh": list(range(52, 59)), "rh": list(range(232, 239))},
"Auditory Association": {"lh": list(range(59, 67)), "rh": list(range(239, 247))},
"Insula FrontalOperc": {"lh": list(range(67, 79)), "rh": list(range(247, 259))},
"Medial Temporal": {"lh": list(range(79, 87)), "rh": list(range(259, 267))},
"Lateral Temporal": {"lh": list(range(87, 95)), "rh": list(range(267, 275))},
"TPO": {"lh": list(range(95, 100)), "rh": list(range(275, 280))},
"Superior Parietal": {"lh": list(range(100, 110)), "rh": list(range(280, 290))},
"Inferior Parietal": {"lh": list(range(110, 120)), "rh": list(range(290, 300))},
"Posterior Cingulate": {"lh": list(range(120, 133)), "rh": list(range(300, 313))},
"AntCing MedPFC": {"lh": list(range(133, 149)), "rh": list(range(313, 329))},
"OrbPolaFrontal": {"lh": list(range(149, 158)), "rh": list(range(329, 338))},
"Inferior Frontal": {"lh": list(range(158, 167)), "rh": list(range(338, 347))},
"Dorsolateral Prefrontal": {"lh": list(range(167, 180)), "rh": list(range(347, 360))},
"Subcortical Regions": {"lh": list(range(360, 393)), "rh": list(range(393, 426))},
}
List and range method:
python
parcel_approach["Custom"]["regions"] = {
"Primary Visual": {"lh": [0], "rh": [180]},
"Early Visual": {"lh": [1, 2, 3], "rh": [181, 182, 183]},
"Dorsal Stream Visual": {"lh": range(4, 10), "rh": range(184, 190)},
"Ventral Stream Visual": {"lh": range(10, 17), "rh": range(190, 197)},
"MT+ Complex": {"lh": range(17, 26), "rh": range(197, 206)},
"SomaSens Motor": {"lh": range(26, 31), "rh": range(206, 211)},
"ParaCentral MidCing": {"lh": range(31, 40), "rh": range(211, 220)},
"Premotor": {"lh": range(40, 47), "rh": range(220, 227)},
"Posterior Opercular": {"lh": range(47, 52), "rh": range(227, 232)},
"Early Auditory": {"lh": range(52, 59), "rh": range(232, 239)},
"Auditory Association": {"lh": range(59, 67), "rh": range(239, 247)},
"Insula FrontalOperc": {"lh": range(67, 79), "rh": range(247, 259)},
"Medial Temporal": {"lh": range(79, 87), "rh": range(259, 267)},
"Lateral Temporal": {"lh": range(87, 95), "rh": range(267, 275)},
"TPO": {"lh": range(95, 100), "rh": range(275, 280)},
"Superior Parietal": {"lh": range(100, 110), "rh": range(280, 290)},
"Inferior Parietal": {"lh": range(110, 120), "rh": range(290, 300)},
"Posterior Cingulate": {"lh": range(120, 133), "rh": range(300, 313)},
"AntCing MedPFC": {"lh": range(133, 149), "rh": range(313, 329)},
"OrbPolaFrontal": {"lh": range(149, 158), "rh": range(329, 338)},
"Inferior Frontal": {"lh": range(158, 167), "rh": range(338, 347)},
"Dorsolateral Prefrontal": {"lh": range(167, 180), "rh": range(347, 360)},
"Subcortical Regions": {"lh": range(360, 393), "rh": range(393, 426)},
}
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.19.3...0.19.4
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith about 1 year ago
NeuroCAPs - 0.19.3.post0
📖 Documentation
- Additional documentation for
standardizefunction.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.19.3...0.19.3.post0
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith about 1 year ago
NeuroCAPs - 0.19.2
🐛 Fixes
- Add type hints to properties.
- Improve accuracy of type hints for the properties.
- Fixes type hints for certain parameters that included numpy.ndarray.
- Replaces any returns that implies a plot object is returned and replaces with None for clarity.
- Raise type error when
self.subject_tableinCAPis set but is not a dictionary.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.19.1...0.19.2
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith about 1 year ago
NeuroCAPs - 0.19.1
- Primarily to ensure all the latest distributions have the correct documentation links.
- Includes some internal code changes that won't change results.
- TODO for future version is to support Python 3.13.
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith about 1 year ago
NeuroCAPs - 0.19.0
- Cleaning some of the API, specifically parameter names and properties, no defaults have been changed in this update.
🚀 New/Added
suffix_filenameadded toCAP.caps2plot,CAP.caps2surf,CAP.caps2radar, andtransition_matrix. This addition was done to allow thesuffix_titleparameter in each of the previously listed methods to only be responsible for the title of the plots. The suffix filename will also be appended to the end of the default filename.CAPclass now has acluster_scoresproperty to consolodate theinertia,davies_bouldin,silhouette, and "varianceratio" scores into a property instead of separate properties. Consequently, theinertia, ``daviesbouldin,silhouette``, and "variance_ratio" have been removed.
The structure of this property is:
{
"Cluster_Selection_Method": str, # e.g., "elbow", "davies_bouldin", "silhouette", or "variance_ratio"
"Scores": {
"GroupName": {
2: float, # Score for 2 clusters
3: float, # Score for 3 clusters
4: float, # Score for 4 clusters
},
}
}
♻ Changed
- Any instance of
file_namein a parameter name has been changed to the more conventional parameter namefilename. For instance,suffix_file_namenow becomessuffix_filenameandfile_namesbecomesfilenames. This change effects the following functions:merge_dicts,standardize,change_dtypes,CAP.calculate_metrics,CAP.caps2niftis,TimeseriesExtractor.timeseries_to_pickle, andTimeseriesExtractor.visualize_bold. - Warning logged whenever file name parameter is used but
output_diris not specified.
📖 Documentation
- Fix doc parameter error for
CAP.caps2niftisthat usedsuffix_titleinstead ofsuffix_file_name, which is nowsuffix_filename. - In documentation, version labels restricted to changes or additions make from 0.18.0 and above for less clutter.
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith about 1 year ago
NeuroCAPs - 0.18.9
🚀 New/Added
- Custom error to warn about querying issues
- Add optional dependency for demo ### 🐛 Fixes
- Documentation rendering issues
- Restrict from downloading the latest vtk 9.4.0 for
caps2surfto work.
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith about 1 year ago
NeuroCAPs - 0.18.8.post0
📖 Documentation
- Update to documentation to show example directory structure.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.18.8...0.18.8.post0
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith about 1 year ago
NeuroCAPs - 0.18.8
🚀 New/Added
- Added "usesamplemask" key for
fd_thresholdparameter, which if set to True, generates a sample mask to pass to nilearn'sNiftiLabelsMaskerfor censoring prior to nuisance regression. Internally, theclean__extrapolateparameter is used to set extrapolate to False. If condition filtering is requested, when "usesamplemask" key forfd_thresholdparameter is True, then the truncated timeseries is temporarily padded to ensure the correct indices corresponding to the condition are obtained. - Added new property.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.18.7...0.18.8
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith about 1 year ago
NeuroCAPs - 0.18.7
🐛 Fixes
- Fixes projection of CAPs onto NiFTI atlas by preventing in-place modification. Previously, if a new CAP value matched a subsequent atlas label ID, it could cause incorrect coordinate assignments.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.18.6...0.18.7
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith about 1 year ago
NeuroCAPs - 0.18.5
♻ Changed
- Updated Dependencies:
- NumPy: version 2.0 and above can be installed.
- BrainSpace: requires version 0.1.16 and above.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.18.4...0.18.5
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith about 1 year ago
NeuroCAPs - 0.18.4
🐛 Fixes
- Corrected region names for version "3v2" of the AAL atlas. ## ♻ Changed
- Added a specific logged warning when no confound names are found. If some confound names are missing, they will still be listed accordingly.
- Added a specific logged warnings for methods in
CAPthat use therunsparameter. Warnings are issued if a subject is missing any requested run, with an additional warning if all runs are missing.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.18.3...0.18.4
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith about 1 year ago
NeuroCAPs - 0.18.3.post1
📖 Documentation
- Added reference for
merge_dicts.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.18.3.post0...0.18.3.post1
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith about 1 year ago
NeuroCAPs - 0.18.3.post0
📖 Documentation
- Significant documentation revisions for clarity and precision.
- Also, updates outdated documentation for
CAP.get_capsto clarify that figure generation and saving parameters can be used with anycluster_selection_method, not just specific ones as previously implied.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.18.3...0.18.3.post0
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith about 1 year ago
NeuroCAPs - 0.18.3
🐛 Fixes
- More conservative maxsizes for
@lru_cache, change@cacheinTimeseriesExtractorto@lru_cache. - Clean unused import.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.18.2...0.18.3
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith about 1 year ago
NeuroCAPs - 0.18.2
- A simple pre commit hook added to remove a few trailing whitespace, add new lines, etc.
♻ Changed
- Add's
_get_target_indicesand_build_treeto the init file for a shorter import path if cache needs to be cleared or assessed. essentially allows:
New import:
python
from neurocaps._utils import _build_tree, _get_target_indices
Previous import:
python
from neurocaps._utils.analysis.cap2statmap import _build_tree, _get_target_indices
📖 Documentation
- Very minor doc fix.
Full Changelog: https://github.com/donishadsmith/neurocaps/compare/0.18.1...0.18.2
Scientific Software - Peer-reviewed
- Python
Published by donishadsmith about 1 year ago