Recent Releases of nltools
nltools - 0.5.1
Dependency Updates
- Update
scipy.binom_test->scipy.binomtestin code-base for compatibility with currentscipyversions
Testing Updates
- Fixed a testing issue on filepath checking on windows
- Forced numpy random seed to 0 for all
pytestfixtures that usenumpy.randomto generate test data (avoids random test failures due to random data) - Updated stock GA for setting up conda to v3
- Added m1 macOS runners to grid as experimental (not currently working due to missing hdf5 install on OS)
- Set python 3.11 on macOS runner as experimental due to upstream joblib and 3.11 issue
- Set docs building to experimental until upstream issues are resolved (docs are outdated with respect to this release!)
- Python
Published by ejolly almost 2 years ago
nltools - 0.4.6
Changes
Fixes
- Fixed warnings from
onsets_to_dmas error-checking wasn't quite right - Fixed deprecated
nilearnwarnings - Fixed deprecated
nibabel.get_affine()->.affine
New
Brain_Data.similarityshould be dramatically faster and now supports rank correlation: https://github.com/cosanlab/nltools/issues/308 https://github.com/cosanlab/nltools/issues/316 https://github.com/cosanlab/nltools/issues/404Design_Matrix.cleanwill raise an error if there are duplicate column name- Loading
.h5objects inBrain_Datanow respects themaskargument: ``` # User loads h5 that contains mask so that mask is used instead of the default MNI mask
Brain_Data('brain.h5')
User loads h5 that contains mask but also sets mask argument.
Now mask value takes precedence over whatever mask is in h5
so we issue a warning to the user letting them know on load
Brain_Data('brain.h5', mask='path/to/nifti/mask.nii.gz')
UserWarning(...)
User loads h5 that does NOT contain a mask and doesnt set the mask
argument so the default MNI mask is used, similar to nifti files
This is an implicit fallback just like with niftis
BrainData('brainnomask.h5')
User loads h5 that does NOT contain mask but also sets mask argument
Mask value is used to learn transformation like niftis
No need to warn them about anything
BrainData('brainnomask.h5', mask='path/to/nifti/mask.nii.gz') ```
- Python
Published by ejolly over 3 years ago
nltools - 0.4.4
General
- Removed
mneas a dependency - Clarify doctstring for
Adjacency.distance_to_similarityto note we currently only support euclidean and correlation distance
Bug Fixes
Pathobjects now reliably work forBrain_DataandAdjacencyclasses with passing tests- Fixed major bug in
ispswhere hilbert trasform was being applied to the wrong axises
New Features
Adjacency
- new
generate_permutationsmethod which acts as python generator that can be used for iteration - new
.cluster_summarymethod to summarize with and between cluster distances - new
.summethod to add adjacency matrices - new
.fisher_z_rmethod to invert.fisher_r_z
Stats
- new
align_statesfunction that implements the Hungarian Algorithm ispsgains a newpairwiseargument
- Python
Published by ejolly almost 5 years ago
nltools - 0.4.3
This releases drops Python 3.6 Support!
This is primarily a maintenance release that move ours testing, documentation, and deployment infrastructure to github actions and github-pages from travis CI and readthedocs. Our entire code base is now formatted using black and will enforce checks for all new commits and PRs. Documentation and PyPi uploading have also been configured to deploy on new releases (starting from this one).
Our documentation site has now moved to: https://nltools.org.
Bug Fixes
stats.fdrnow checks that the inputted array is within the range 0-1- fix
int64out-of-bounds test errors on Windows
Enchancements
Brain_Dataclasses now supportPathobjects in addition to string path namesSimulatorclasses now accept arandom_seedfor reproducibility
Deprecations
- Python 3.6 is no longer officially supported. Python 3.7, 3.8 are the current supported versions. Once our dependencies support 3.9 we will too.
- remove all traces of Python 2 and
six
- Python
Published by ejolly almost 5 years ago
nltools - 0.4.0
New Functionality
- Added new intersubject correlation (ISC) functionality. ISC function in stats module can compute different types of resampling tests (i.e., circular shifting, phase randomization, subject-wise bootstrapping. ISC method on Adjacency Class can perform subject-wise bootstrapping.
- Added new intersubject functional connectivity (ISFC) functionality. Uses leave-one-subject out averaging method.
- Added new dynamic intersubject phase synchrony (ISPS) functionality. Calculate length of average resultant vector, significance computed with parametric Rayleigh test.
- roitobrain is now much faster when using arrays.
- Added new timeseries permutation methods to correlation_permutation function (circle shifting and phase randomization)
- BrainData has a new `temporalresample` method to up and downsample timeseries
Bug Fixes
- fixed smoothing bug
- temporary fix to plotting bug. due to change to matlotlib api, colorbars on brain_data plots are not working correctly. Turned them off by default for now.
- no longer pinning joblib to old version
Refactoring
- updated and refactored align code.
Deprecated/Removed
- Removed jackknife permutation method as we decided it wasn't working as we intended.
- Python
Published by ljchang over 5 years ago
nltools - 0.3.19
This release is mostly bug fixes with Design_Matrix class fixed by @ejolly
Bug Fixes
- Numerous bug fixes with Design_Matrix class
- updated issues with deprecated pandas .ix index methods
- fixed issues with onsetstodm
- fixed issues with appending multiple design matrix instances
- Python
Published by ljchang almost 6 years ago
nltools - 0.3.17
New Functionality
- new interactive plot to view components from decomposition analysis
- new median method
- can now extract median and PCA components from a masked Brain_Data instance
- can now perform KernelPCA and DictionaryLearning with Decompose method.
Changed API
- many
methodkeywords have been changed tometricfor consistency (e.g., distance methods) - extractroi BrainData method now has option to resample target mask to source data
Bug Fixes
- fixed the double plot in jupyter notebooks
- removed nans from regression standard error
- fixed issues with labels in several Adjacency plots (mds, silhouette)
- fixed issue with float and integer types in all dunder methods in Brain_Data & Adjacency
- fixed roitobrain function, which can now accommodate most input data types
- changed how empty labels are stored in Adjacency
- added mask argument to checkbraindata
- refactored and updated apply_mask, new flag to resample mask to
- Python
Published by ljchang almost 6 years ago
nltools - 0.3.15
New Functionality - added plot saving functionality for full, glass, and min views - predict now uses balanced_accuracy as default for classification accuracy
Bug Fixes - fixed bug with gloverhrf function which will impact convolution with designmatrix - fixed numerous bugs with adjacency class - fixed multiple mugs in permutation tests - fixed bug with 3mm brain mask - fixed bug checking for isometric voxels which was causing plotting errors - fixed bug in plotting save - updated sklearn requirements which was causing bug with backwards compatibility for balanced_accuracy - fixed bugs with hdf5 with adjacency instances
- Python
Published by ljchang almost 6 years ago
nltools - 0.3.14
New Functionality
- Added ability to read and write Brain_Data objects to hdf5. This is WAY faster than nifti and is the recommended method for large datasets.
- Randomise - can now run fast permutation testing similar to FSL.
- Add options for holm-bonf to ttest and randomise
- Added ability to estimate Social Relations Model using Adjacency Class.
- Added new SimulateGrid class for generating random data for simulations in 2D
Bug Fixes - fixed fetchlocalizer - fixed bug in BrainData.smooth where original class instance attributes weren't being propagated. - cleaned up code for distance_correlations - fixed bug with Adjacency when NaNs were present on diagonal. - fixed travis bug. - fixed plotting bug
- Python
Published by ljchang over 6 years ago
nltools - 0.3.12
New Functionality - added ISC output to align output. - added new function to fetch pinel localizer dataset - added smooth method to BrainData Class - added findspikes method to Brain_Data Class
Bug Fixes - updated align tests
Notes - dropped support for Python 2.7. Will no longer be running test suite.
- Python
Published by ljchang almost 7 years ago
nltools - 0.3.11
New Functionality
- Can now perform multi-region and/or searchlight based prediction using
Brain_Data.predict_multi Brain_Data.predictnow support multi-class classification- New interactive plotting based on
nilearnusingBrain_Data.iplot() - plotting functions have been renamed to remove camel case (e.g.
plotBrain->plot_brain) Brain_Data.plotnow integrates old plotting functions in method call using argumentview. Still defaults to axial slices but can optionally display,glass,mni(for ortho slices) orboth- new
distance_correlation,procrustes_distance,jackknife_permutationfunctions innltools.stats expand_mask,collapse_mask,create_spherecan now take custom masksBrain_Data.standarizegains new axis argument
Bug Fixes
- Fixed issue in boolean indexing with ROC forced choice computation
- Fixed edge case bug in fdr
- holm_bonf behaves like fdr now and fixes incorrect pvalue bug
- check_numpy_square_matrix validates properly now
- fixed issue in failed arma regression if statsmodels was not installed
- fixed issue in failed interactive plotting if ipywidgets was not installed
- Python
Published by ejolly about 7 years ago
nltools - 0.3.10
New Functionality - Added new 2-D matrix permutation to correlation_permutation()
Bug Fixes - Updated MANIFEST to include resources with pypi - fixed compatibility issues with python 2.7 and joblib. Using older version for now. - refactored tests to be cleaner with fixtures.
- Python
Published by ljchang over 7 years ago
nltools - 0.3.9
New Functionality - New regression method for Adjacency objects (univariate and Adjacency decomposition) - faster t-tests (permutation and standard) - within cluster mean method for Adjacency objects - similarity to distance conversion for Adacency objects - new function to convert ROI values back into brain_data instances
- Python
Published by ljchang over 7 years ago
nltools - 0.3.7
New Functionality - added labels to Adjacency Class - refactored regression module (includes robust and AR models) - updated threshold methds - refactored design_matrix class. Lots of new functionality - refactored trim and winsorize into single function - permutation tests now default to two tailed
Bug Fixes - plotmds - upsample - importing lists of 4d data. - transformpairwise - Design_matrix many bug fixes - conflict with matplotlib and nilearn versions
- Python
Published by ljchang almost 8 years ago
nltools - 0.3.6
New Functionality - Added ability to perform hyperalignment using procrustes transform and shared response model. - Added ability to decompose across space and time - Added cosine similarity to Brain_Data.similarity
Bug Fixes - fixed bug with thresholding - fixed bug with random seed and parallel processing bootstrap and permutations - fixed bug with naming in designmatrix - fixed bug with filereader - fixed bug with plotting (updated matplotlib and nilearn version) - moved external code to /external folder
- Python
Published by ljchang about 8 years ago
nltools - 0.3.4
This release was lead by @ejolly and added a bunch of new things.
New Functionality - Added a new Preference class to specify preferences for nltools. The most notable one is which brain mask to implicitly use. For large datasets, 3 x 3 x 3 will dramatically reduce RAM costs and speed up computations. These masks are packaged in resources folder as well as versions that don't include the ventricles. - ARMA estimator for regress methods - robust regression for regress methods
API Changes
- Brain_Data.threshold has a new api. Can now accommodate bidirectional thresholding, but must specify an upper and lower bound thresholds
Bug Fixes - small bug in bootstrap function - requirements file now synced with setuptools - rolled back matplotlib to avoid a new plotting bug. - fixed data type output for Brain_Data.ttest() - fixed an indexing bug with stats.downsample function
- Python
Published by ljchang over 8 years ago
nltools -
-Several bug fixes to braindata and designmatrix -new silhouette plot
- Python
Published by ljchang over 8 years ago
nltools -
This release fixes numerous bugs and adds a new Design_Matrix class.
- Python
Published by ljchang almost 9 years ago