Prerequisites

Expected and helpful background knowledge for joining an event on this topic.

Background

  • Expected: Basic familiarity with Git
  • Not required: Experience programming in Python or MATLAB

Scientific data often takes the form of arrays: recorded signals, images, measurements, and multidimensional datasets. Understanding dimensions, indexing, numerical operations, and visualization helps you turn these measurements into analyses that others can understand and reproduce.

Why This Matters

Array dimensions, indexing choices, and memory behavior affect both the meaning of a result and whether an analysis runs successfully. Clear functions, well-labeled data, version control, and figures that can be regenerated make a numerical workflow easier to maintain and share.

Python and MATLAB provide different environments for exploring these common ideas. The language used in a particular workshop is stated on its event page.

Python Approach

No prior experience with Python or Jupyter notebooks is required. Using examples from neuroscience and other disciplines, you will work in Jupyter notebooks to analyze data with NumPy, create figures with Matplotlib, and generate signals, fit models, and apply statistical methods with SciPy.

You will explore how indexing, slicing, and masking help you work with images and other multidimensional arrays, including interactive masking with napari. You will learn to use objects and methods exposed by scientific libraries, organize data in HDF5 files, and work with labeled arrays and larger datasets using Xarray and Dask. These methods help you select parts of a dataset, express calculations directly, and manage data that would be impractical to load into memory all at once.

MATLAB Approach

No prior experience programming in MATLAB is required. Using electrophysiology data from a behavioral experiment, you will explore numerical analysis and visualization in the MATLAB ecosystem. Many neuroscience labs have valuable MATLAB scripts and toolboxes that carry years of experimental knowledge; understanding and improving that code carefully helps preserve this knowledge.

You will examine how functions with clear inputs and outputs, project organization, version control, well-labeled data, and environment documentation make analyses easier to share and reproduce. You will also consider how to regenerate older figures, avoid hard-coded paths, and decide when to keep a workflow in MATLAB or compare it with Python tools.

Questions We Can Explore Together

Events

Explore upcoming dates and details from previous events.

–

Scientific Python: Arrays and Numerical Computing

Starts at 4 sessions

This four-week online course introduces array-based scientific computing in Python. Participants use NumPy, Matplotlib, and SciPy to analyze and visualize numerical data, work with …

–

Intro to Data Analysis with Matlab for Neuroscientists

Starts at 5 sessions

Matlab is a powerful programming and analysis tool, widely recognized and utilized, especially in the realm of neuroscience. With its extensive suite of data-science tools, Matlab …

Technology Radar

Our view of the tools and practices relevant to this topic. Recommendation and teaching availability are separate.

Provisional positions are editorial proposals awaiting group review.

Recommendation rings

  1. Recommend
    A recommended choice for relevant research work.
  2. Explore
    Promising or used internally; suitability or teaching integration is still developing.
  3. Assess
    Worth investigating before trying or recommending.

Kinds of item

  • Libraries
  • Languages & frameworks
  • Tools & platforms
  • Practices
  • Data formats

Items in this view

Recommend

CSV

Plain text file format for tabular data using commas to separate values

Recommend Provisional

Data formats · Not currently taught

0 topics with recorded teaching · 0 recorded and scheduled offerings

Our View

CSV is the universal format for tabular data. It's human-readable, works with every data analysis tool, and is perfect for sharing datasets. Its simplicity makes it ideal for reproducible research and long-term data storage.

Relevant to the topic landscape; no explicit recorded offering is currently attributed to this item.

0 past offerings · 0 upcoming offerings

Related themes: Scientific Computing

Related topics: Programming and Data AcquisitionArrays and Numerical ComputingDataframes and Statistics

Check the shape, types, units, and assumptions of research data before using it.

Recommend Provisional

Practices · Teaching

0 topics with recorded teaching · 0 recorded and scheduled offerings

Our View

Explicit validation turns data assumptions into checks that can catch missing values, inconsistent metadata, and unexpected inputs before analysis.

Covered through data organization and robust software topics; individual offerings are not yet attributed to this practice.

0 past offerings · 0 upcoming offerings

Related themes: Neural Data AnalysisScientific Computing

Related topics: Programming and Data AcquisitionAI-Assisted Software DevelopmentArrays and Numerical ComputingCalcium Imaging AnalysisDataframes and StatisticsLocal Field Potential (LFP) AnalysisMachine Learning(M)EEG AnalysisNeural Spike AnalysisRobust and Reusable Software

Git

Distributed version control system for tracking changes in source code

Recommend Provisional

Tools & platforms · Teaching

5 topics with recorded teaching · 20 recorded and scheduled offerings

Our View

Git is the industry standard for version control, enabling researchers to track changes, collaborate effectively, and maintain a complete history of their work. It's essential for reproducible research and collaboration.

Recorded in topic offerings; consult the dated event links for availability.

19 past offerings · 1 upcoming offerings

Related themes: Scientific Computing

Related topics: AI-Assisted Software DevelopmentArrays and Numerical ComputingAutomating Research WorkflowsDeveloper EnvironmentRobust and Reusable SoftwareWebsite Development

HDF5

Hierarchical Data Format for storing large scientific datasets

Recommend Provisional

Data formats · Not currently taught

0 topics with recorded teaching · 0 recorded and scheduled offerings

Our View

HDF5 is the standard format for storing large, complex scientific datasets with rich metadata. Its hierarchical structure and efficient compression make it ideal for neuroscience data like multi-channel recordings and imaging time series.

Relevant to the topic landscape; no explicit recorded offering is currently attributed to this item.

0 past offerings · 0 upcoming offerings

Related themes: Neural Data AnalysisScientific Computing

Related topics: Arrays and Numerical ComputingCalcium Imaging AnalysisDataframes and Statistics(M)EEG Analysis

Interactive computing environment combining code, visualizations, and narrative text

Recommend Provisional

Tools & platforms · Teaching

6 topics with recorded teaching · 17 recorded and scheduled offerings

Our View

Jupyter notebooks allow you to combine code, results, and explanations in a single document. This makes them perfect for exploratory data analysis, teaching, and creating reproducible research workflows. You can iterate quickly, visualize results inline, and document your thought process as you work.

Recorded in topic offerings; consult the dated event links for availability.

15 past offerings · 2 upcoming offerings

Related themes: Scientific Computing

Related topics: Arrays and Numerical ComputingAutomating Research WorkflowsDataframes and StatisticsDeveloper EnvironmentMachine LearningRobust and Reusable SoftwareWebsite Development

MATLAB

Programming language and numerical computing environment used in many scientific labs.

Recommend Provisional

Languages & frameworks · Teaching

2 topics with recorded teaching · 2 recorded and scheduled offerings

Our View

Relevant to researchers working with existing MATLAB analyses and numerical computing workflows. The recommendation is contextual rather than a requirement to learn it alongside every other language.

Recorded in topic offerings; consult the dated event links for availability.

2 past offerings · 0 upcoming offerings

Related themes: Scientific Computing

Related topics: Arrays and Numerical ComputingRobust and Reusable Software

Matplotlib

Comprehensive library for creating static, animated, and interactive visualizations

Recommend Provisional

Libraries · Teaching

6 topics with recorded teaching · 19 recorded and scheduled offerings

Our View

Matplotlib is the foundational plotting library for Python, offering complete control over every aspect of your figures. It's publication-ready out of the box and integrates seamlessly with NumPy and Pandas, making it essential for visualizing research data.

Recorded in topic offerings; consult the dated event links for availability.

15 past offerings · 4 upcoming offerings

Related themes: Neural Data AnalysisScientific Computing

Related topics: AI-Assisted Software DevelopmentArrays and Numerical ComputingDataframes and StatisticsDeveloper EnvironmentLocal Field Potential (LFP) Analysis(M)EEG AnalysisNeural Spike Analysis

NumPy

The fundamental package for scientific computing with Python

Recommend Provisional

Libraries · Teaching

8 topics with recorded teaching · 26 recorded and scheduled offerings

Our View

NumPy is the foundation of the scientific Python ecosystem. It provides powerful n-dimensional array objects and tools for working with these arrays. Nearly every scientific Python package builds on NumPy, making it essential for data analysis, numerical computing, and scientific research.

Recorded in topic offerings; consult the dated event links for availability.

21 past offerings · 5 upcoming offerings

Related themes: Neural Data AnalysisScientific Computing

Related topics: AI-Assisted Software DevelopmentArrays and Numerical ComputingCalcium Imaging AnalysisDataframes and StatisticsLocal Field Potential (LFP) AnalysisMachine Learning(M)EEG AnalysisNeural Spike AnalysisRobust and Reusable Software

Pandas

Powerful data analysis and manipulation library for Python

Recommend Provisional

Libraries · Teaching

5 topics with recorded teaching · 16 recorded and scheduled offerings

Our View

Pandas provides intuitive data structures (DataFrames) for working with tabular data, making it easy to clean, analyze, and visualize datasets. It's the go-to tool for exploratory data analysis and handling experimental results in research.

Recorded in topic offerings; consult the dated event links for availability.

14 past offerings · 2 upcoming offerings

Related themes: Neural Data AnalysisScientific Computing

Related topics: AI-Assisted Software DevelopmentArrays and Numerical ComputingAutomating Research WorkflowsDataframes and StatisticsLocal Field Potential (LFP) AnalysisNeural Spike Analysis

pathlib

Python standard-library module for working with filesystem paths as objects.

Recommend Provisional

Libraries · Not currently taught

0 topics with recorded teaching · 0 recorded and scheduled offerings

Our View

pathlib makes path handling more readable and portable than manually joining path strings.

Relevant to the topic landscape; no explicit recorded offering is currently attributed to this item.

0 past offerings · 0 upcoming offerings

Related themes: Scientific Computing

Related topics: Arrays and Numerical ComputingAutomating Research Workflows

Python

General-purpose programming language widely used for scientific computing and research software.

Recommend Provisional

Languages & frameworks · Teaching

10 topics with recorded teaching · 33 recorded and scheduled offerings

Our View

Python combines a readable language with a mature scientific ecosystem, making it a practical default for research data analysis, automation, and teaching.

Recorded in topic offerings; consult the dated event links for availability.

26 past offerings · 7 upcoming offerings

Related themes: Neural Data AnalysisScientific Computing

Related topics: Programming and Data AcquisitionAI-Assisted Software DevelopmentArrays and Numerical ComputingAutomating Research WorkflowsCalcium Imaging AnalysisDataframes and StatisticsDeveloper EnvironmentLocal Field Potential (LFP) AnalysisMachine Learning(M)EEG AnalysisNeural Spike AnalysisRobust and Reusable Software

Record and reproduce the software environment used for an analysis or application.

Recommend Provisional

Practices · Teaching

0 topics with recorded teaching · 0 recorded and scheduled offerings

Our View

Declared dependencies and lock files help collaborators rerun analyses and distinguish environment changes from changes in scientific results.

Covered through our computing environment and research workflow topics; individual offerings are not yet attributed to this practice.

0 past offerings · 0 upcoming offerings

Related themes: Neural Data AnalysisScientific Computing

Related topics: AI-Assisted Software DevelopmentArrays and Numerical ComputingAutomating Research WorkflowsCalcium Imaging AnalysisDataframes and StatisticsDeveloper EnvironmentLocal Field Potential (LFP) AnalysisMachine LearningRobust and Reusable Software

SciPy

Scientific computing library providing optimization, signal processing, and statistical functions

Recommend Provisional

Libraries · Teaching

5 topics with recorded teaching · 14 recorded and scheduled offerings

Our View

SciPy builds on NumPy to provide a comprehensive collection of algorithms for scientific computing. Its signal processing tools are essential for analyzing neural recordings, while its optimization and statistical functions support data analysis and modeling across neuroscience research.

Recorded in topic offerings; consult the dated event links for availability.

9 past offerings · 5 upcoming offerings

Related themes: Neural Data AnalysisScientific Computing

Related topics: AI-Assisted Software DevelopmentArrays and Numerical ComputingCalcium Imaging AnalysisLocal Field Potential (LFP) AnalysisMachine Learning(M)EEG AnalysisNeural Spike Analysis

Seaborn

Statistical data visualization library built on Matplotlib

Recommend Provisional

Libraries · Teaching

2 topics with recorded teaching · 10 recorded and scheduled offerings

Our View

Seaborn makes it easy to create beautiful, informative statistical graphics with minimal code. It provides high-level functions for common statistical plots and works seamlessly with Pandas DataFrames, making exploratory analysis faster and more intuitive than raw Matplotlib.

Recorded in topic offerings; consult the dated event links for availability.

10 past offerings · 0 upcoming offerings

Related themes: Scientific Computing

Related topics: Arrays and Numerical ComputingDataframes and Statistics

Explore

C++

Compiled programming language used for performant systems, embedded devices, and Arduino development.

Explore Provisional

Languages & frameworks · Teaching

1 topics with recorded teaching · 1 recorded and scheduled offerings

Our View

C++ is useful when research software needs direct hardware control, predictable performance, or integration with embedded systems.

Recorded in topic offerings; consult the dated event links for availability.

1 past offerings · 0 upcoming offerings

Related themes: Scientific Computing

Related topics: Programming and Data AcquisitionArrays and Numerical ComputingRobust and Reusable Software

CuPy

GPU-accelerated array library with a NumPy-like interface.

Explore Provisional

Libraries · Teaching

1 topics with recorded teaching · 2 recorded and scheduled offerings

Our View

CuPy helps move suitable NumPy-style workloads onto GPUs with familiar array operations.

Recorded in topic offerings; consult the dated event links for availability.

1 past offerings · 1 upcoming offerings

Related themes: Scientific Computing

Related topics: Arrays and Numerical ComputingMachine LearningRobust and Reusable Software

Dask

Python library for parallel and out-of-core computing with familiar NumPy, Pandas, and xarray-style interfaces.

Explore Provisional

Libraries · Teaching

2 topics with recorded teaching · 2 recorded and scheduled offerings

Our View

Dask helps researchers scale analyses beyond a single in-memory array or table while staying close to the scientific Python tools they already use.

Recorded in topic offerings; consult the dated event links for availability.

1 past offerings · 1 upcoming offerings

Related themes: Scientific Computing

Related topics: Arrays and Numerical ComputingDataframes and StatisticsRobust and Reusable Software

GitHub

Web-based platform for hosting and collaborating on Git repositories

Explore Provisional

Tools & platforms · Teaching

5 topics with recorded teaching · 18 recorded and scheduled offerings

Our View

GitHub is the de facto standard for sharing and collaborating on code. It provides excellent tools for code review, issue tracking, and project management. Most scientific software is hosted on GitHub, making it essential for reproducible research.

Recorded in topic offerings; consult the dated event links for availability.

18 past offerings · 0 upcoming offerings

Related themes: Scientific Computing

Related topics: AI-Assisted Software DevelopmentArrays and Numerical ComputingAutomating Research WorkflowsDeveloper EnvironmentRobust and Reusable SoftwareWebsite Development

h5py

Python interface for reading and writing HDF5 files.

Explore Provisional

Libraries · Teaching

2 topics with recorded teaching · 2 recorded and scheduled offerings

Our View

h5py gives Python users direct access to hierarchical HDF5 datasets, including partial reads and structured metadata, which are important for large scientific data files.

Recorded in topic offerings; consult the dated event links for availability.

1 past offerings · 1 upcoming offerings

Related themes: Neural Data AnalysisScientific Computing

Related topics: Arrays and Numerical ComputingCalcium Imaging AnalysisDataframes and StatisticsRobust and Reusable Software

JAX

Python library for composable transformations, automatic differentiation, and accelerated array computing.

Explore Provisional

Libraries · Not currently taught

0 topics with recorded teaching · 0 recorded and scheduled offerings

Our View

JAX is useful for high-performance numerical work that benefits from compilation, vectorization, and automatic differentiation.

Relevant to the topic landscape; no explicit recorded offering is currently attributed to this item.

0 past offerings · 0 upcoming offerings

Related themes: Scientific Computing

Related topics: Arrays and Numerical ComputingMachine Learning

Python tool for measuring memory usage line by line or over time.

Explore Provisional

Libraries · Teaching

1 topics with recorded teaching · 1 recorded and scheduled offerings

Our View

memory-profiler helps researchers see where an analysis allocates memory, which is often the first step toward making large-data workflows reliable.

Recorded in topic offerings; consult the dated event links for availability.

1 past offerings · 0 upcoming offerings

Related themes: Scientific Computing

Related topics: Arrays and Numerical ComputingAutomating Research WorkflowsRobust and Reusable Software

Napari

Multi-dimensional image viewer for Python with interactive visualization and annotation capabilities

Explore Provisional

Tools & platforms · Teaching

1 topics with recorded teaching · 3 recorded and scheduled offerings

Our View

Napari provides an intuitive, fast viewer for multi-dimensional scientific images. It's perfect for exploring calcium imaging data, manually selecting ROIs, and visualizing complex image stacks. Its plugin ecosystem and Python API make it both user-friendly and extensible.

Recorded in topic offerings; consult the dated event links for availability.

3 past offerings · 0 upcoming offerings

Related themes: Neural Data AnalysisScientific Computing

Related topics: Arrays and Numerical ComputingCalcium Imaging Analysis

NetCDF

Network Common Data Form for array-oriented scientific data

Explore Provisional

Data formats · Teaching

1 topics with recorded teaching · 1 recorded and scheduled offerings

Our View

NetCDF provides self-describing, portable storage for multi-dimensional arrays with labeled dimensions. It integrates seamlessly with xarray and follows standardized metadata conventions, making it excellent for time-series data with spatial structure.

Recorded in topic offerings; consult the dated event links for availability.

1 past offerings · 0 upcoming offerings

Related themes: Scientific Computing

Related topics: Arrays and Numerical ComputingDataframes and Statistics

Numba

Python just-in-time compiler for accelerating numerical functions.

Explore Provisional

Libraries · Teaching

1 topics with recorded teaching · 2 recorded and scheduled offerings

Our View

Numba can speed up numerical Python code while keeping performance work close to familiar Python and NumPy-style code.

Recorded in topic offerings; consult the dated event links for availability.

1 past offerings · 1 upcoming offerings

Related themes: Scientific Computing

Related topics: Arrays and Numerical ComputingMachine LearningRobust and Reusable Software

Pingouin

Statistical package for Python focused on ease of use and readable output for common statistical tests

Explore Provisional

Libraries · Teaching

2 topics with recorded teaching · 10 recorded and scheduled offerings

Our View

Pingouin provides a simple, consistent interface for statistical testing that produces readable output. It's perfect for researchers who need to run standard statistical tests without getting lost in complex API documentation, and it integrates beautifully with pandas DataFrames.

Recorded in topic offerings; consult the dated event links for availability.

10 past offerings · 0 upcoming offerings

Related themes: Scientific Computing

Related topics: Arrays and Numerical ComputingDataframes and Statistics

Sciebo

Secure cloud storage for research data in German universities

Explore Provisional

Tools & platforms · Teaching

2 topics with recorded teaching · 10 recorded and scheduled offerings

Our View

Sciebo provides GDPR-compliant cloud storage hosted in Germany, specifically designed for academic use. It offers generous storage quotas and integrates well with university authentication systems, making it ideal for storing and sharing research data.

Recorded in topic offerings; consult the dated event links for availability.

10 past offerings · 0 upcoming offerings

Related themes: Scientific Computing

Related topics: Arrays and Numerical ComputingAutomating Research WorkflowsDeveloper Environment

SciPy Stats

Statistical functions and probability distributions from SciPy's stats module.

Explore Provisional

Libraries · Teaching

1 topics with recorded teaching · 1 recorded and scheduled offerings

Our View

SciPy Stats provides a broad, scriptable foundation for distributions, statistical tests, random variables, and summary statistics used throughout scientific Python workflows.

Recorded in topic offerings; consult the dated event links for availability.

0 past offerings · 1 upcoming offerings

Related themes: Neural Data AnalysisScientific Computing

Related topics: Arrays and Numerical ComputingDataframes and StatisticsLocal Field Potential (LFP) Analysis(M)EEG Analysis

timeit

Python standard-library module for measuring execution time of small code snippets.

Explore Provisional

Libraries · Teaching

1 topics with recorded teaching · 2 recorded and scheduled offerings

Our View

timeit gives researchers a simple, repeatable way to compare small implementation choices before investing in heavier profiling or optimization work.

Recorded in topic offerings; consult the dated event links for availability.

1 past offerings · 1 upcoming offerings

Related themes: Scientific Computing

Related topics: Arrays and Numerical ComputingAutomating Research WorkflowsRobust and Reusable Software

xarray

N-dimensional labeled arrays and datasets for scientific data analysis

Explore Provisional

Libraries · Teaching

2 topics with recorded teaching · 2 recorded and scheduled offerings

Our View

Xarray extends pandas-like labels and indexing to multi-dimensional arrays, making it perfect for working with complex scientific datasets like electrophysiology recordings, imaging data, and climate data. It handles coordinates, dimensions, and metadata elegantly.

Recorded in topic offerings; consult the dated event links for availability.

1 past offerings · 1 upcoming offerings

Related themes: Neural Data AnalysisScientific Computing

Related topics: Arrays and Numerical ComputingDataframes and Statistics(M)EEG AnalysisRobust and Reusable Software

Let's get in touch

For tutoring, collaboration, or follow-up support, contact the team. We are happy to help you connect workshop ideas with your own research practice.

Privacy information for email contact