뉴로해킹 파이썬 파트 스터디 관련 자료를 저장하는 곳입니다.
참고자료:
- [Day 00] Introduction, Python, images (2nd 2017-06-01)
- [Day 01] Arrays, images and plotting
- [Day 02] 4D arrays, time series and diagnostics
- [Day 03] Vectors, projection and PCA
- [Day 04] Correlation, regression, statistics on brain images
- [Day 05] Exploring the general linear model
- [Day 06] Project pitch, ANOVA with the GLM
- [Day 07] The HRF, modeling and statistical maps
- [Day 08] Multiple comparison correction
- [Day 09] Slice timing and motion correction
- [Day 10] Affine and cross-modality registration
- [Day 11] Cross-subject registration
- [Day 12] Exploring cross-subject registration
본 코스의 Topic 별 구성 Link
- Brisk introduction to Python. See Introduction, Python, images;
- “for” and “while”, “break” and “else:”;
- Modules and scripts;
- Packages and namespaces;
- List comprehensions;
- Two double underscore variables;
- String literals in Python;
- Inserting values into strings;
- Docstrings;
- Kind-of True;
- Using assert for testing;
- Keyword arguments;
- Making and breaking file paths in Python. See: Git / github workflow,the Python path;
- Where does Python look for modules?. See: Git / github workflow, the Python path;
- Using PYTHONPATH;
- Python coding style.
- What is an image?. See Introduction, Python, images;
- NumPy introduction (from scipy lecture notes (SLN);
- numpy array object (SLN);
- array operations (SLN). See: Basic numpy exercises;
- Array reduction operations;
- Arrays as images, images as arrays. See: Arrays, images and plotting;
- Reshaping and three-dimensional arrays. See: Arrays, images and plotting;
- Index ordering and reshape in NumPy and MATLAB;
- Working with four dimensional images, masks and functions. See: 4D arrays, time series and diagnostics;
- Reshaping, 4D to 2D;
- Logical operations on boolean arrays;
- Reshaping 4D images to 2D arrays;
- Slicing with boolean vectors. See: Correlation, regression, statistics on brain images;
- Indexing with boolean masks.
- Vector and matrix dot products, “np.outer”;
- Testing for near equality with “allclose”;
- Numpy arange;
- Methods vs functions in NumPy;
- Subtracting the mean from columns or rows;
- Adding length 1 dimensions with newaxis;
- Diagonal matrices;
- numpy.tranpose for swapping axes;
- Random numbers with np.random;
- Removing length 1 axes with numpy.squeeze;
- Making coordinate arrays with meshgrid;
- Comparing arrays;
- Comparing floats and floating point error;
- Making floating points numbers print nicely.
- Plotting lines in matplotlib;
- Subplots and axes in matplotlib.
- curious git;
- First steps with git;
- Git walk-through;
- Looking at real git objects;
- curious remotes.
- Git workflow exercises;
- PCA exercise, with some github practice.
- algebra of sums;
- vectors and dot products;
- vector projection;
- introduction to Principal Component Analysis. See: Vectors, projection and PCA;
- vector angles;
- correlation and projection. See Correlation, regression, statistics on brain images;
- matrix rank
- Inverse of a diagonal matrix;
- introduction to the General Linear Model. See Exploring the general linear model;
- cumulative density functions;
- A worked example of the general linear model;
- Subtracting the mean from a vector;
- Hypothesis tesing with the general linear model;
- tutorial on correlated regressors.
- tutorial on convolution.
- Otsu’s method for binarizing images.
- rotation in 2D;
- Rotations and rotation matrices;
- Encoding zooms (scaling) with a diagonal matrix;
- coordinate systems and affine transforms;
- mutual information;
- The nibabel.affines module;
- Applying coordinate transforms with nibabel.affines.apply_affine.
- Resampling with scipy.ndimage;
- General resampling between images with scipy.ndimage.map_coordinates;
- Making and saving new images in nibabel;
- introduction to smoothing;
- smoothing as convolution.
- optimizing spatial transformations.
- Voxel time courses. See Correlation, regression, statistics on brain images;
- Modeling a single voxel;
- Convolving with the hemodyamic response function.
- Coordinate systems and affine transforms;
- The nibabel.affines module;
- Applying coordinate transforms with nibabel.affines.apply_affine;
- Sometimes, the NIfTI image stores the TR in the header;
- Registration with dipy and the Anterior cingulate exercise;
- Introducing nipype;
- See also: SPM slice timing exercise; Scripting of SPM analysis with nipype exercise.