Intro to Python for Scientists (Crash Course)
A short introduction to Python, Numpy, Matplotlib, and Pandas
No upcoming dates
Organize observations and metadata, transform tables, create clear graphics, and connect statistical models to reproducible explanations. Python and R approaches explore tidy workflows, readable analyses, and practical strategies for larger research datasets.
Expected and helpful background knowledge for joining an event on this topic.
Much of scientific analysis begins with tables: trial outcomes, spike times, participant information, and measurements collected across experimental conditions. Dataframes connect these observations with their metadata and support a continuous workflow from data preparation to visualization, statistical modeling, and written interpretation.
Decisions about rows, columns, data types, grouping, and aggregation determine which observations are compared and what a statistical result represents. Explicit transformations and readable code help collaborators trace analytical decisions, check assumptions, and adapt the workflow when new data arrives.
Python and R offer complementary approaches to these ideas. Both are supported, even when only one language has a scheduled workshop. Each event page describes its particular language and requirements.
Familiarity with Python, Jupyter notebooks, and Git is helpful. The arrays topic provides a useful foundation for the Python approach; it is not a requirement for the R approach.
Using examples from neuroscience and other disciplines, you will organize metadata with dictionaries and JSON, analyze tabular data with Pandas and Polars, and visualize patterns with Matplotlib, Seaborn, and Plotnine. You will use Pingouin for statistical analysis and Statsmodels formulas to express relationships between variables.
You will connect tidy-data principles to tabular and labeled multidimensional data, including Xarray, and examine hierarchical storage and neuroscience-specific data models such as HDF5, NWB, and Neo. For larger datasets, you will explore memory-efficient storage, Dask DataFrame processing, and SQL queries over data files with DuckDB.
No prior experience programming in R is required. Basic familiarity with Git is required for this approach; experience working with tabular research data and basic statistics is helpful.
Using tabular research data, you will practice tidy workflows, reshape tables, fit and compare statistical models, and build clear graphics. You will connect code with written interpretation in reproducible R Markdown reports, keeping results connected to the decisions that produced them.
Readable scripts, explicit reasoning, checks around analysis functions, and documented statistical decisions make the scientific argument easier for collaborators to follow and discuss.
Explore upcoming dates and details from previous events.
A short introduction to Python, Numpy, Matplotlib, and Pandas
A short introduction to Python, Numpy, Matplotlib, and Pandas
A short introduction to Python, Numpy, Matplotlib, and Pandas
A short introduction to Python, Numpy, Matplotlib, and Pandas
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.
Select a point or an item below to read our view.
No items match this view.
Plain text file format for tabular data using commas to separate values
Data formats · Not currently taught
0 topics with recorded teaching · 0 recorded and scheduled offerings
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.
Practices · Teaching
0 topics with recorded teaching · 0 recorded and scheduled offerings
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
Hierarchical Data Format for storing large scientific datasets
Data formats · Not currently taught
0 topics with recorded teaching · 0 recorded and scheduled offerings
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
Lightweight text-based format for storing and exchanging structured data with nested hierarchies
Data formats · Not currently taught
0 topics with recorded teaching · 0 recorded and scheduled offerings
JSON is the standard for structured data exchange on the web and in APIs. Its human-readable format with support for nested structures makes it perfect for configuration files, metadata, and hierarchical data that doesn't fit in CSV.
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 AcquisitionAutomating Research WorkflowsDataframes and Statistics
Interactive computing environment combining code, visualizations, and narrative text
Tools & platforms · Teaching
6 topics with recorded teaching · 17 recorded and scheduled offerings
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
Comprehensive library for creating static, animated, and interactive visualizations
Libraries · Teaching
6 topics with recorded teaching · 19 recorded and scheduled offerings
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
The fundamental package for scientific computing with Python
Libraries · Teaching
8 topics with recorded teaching · 26 recorded and scheduled offerings
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
Powerful data analysis and manipulation library for Python
Libraries · Teaching
5 topics with recorded teaching · 16 recorded and scheduled offerings
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
Columnar storage file format optimized for analytics and large datasets
Data formats · Not currently taught
0 topics with recorded teaching · 0 recorded and scheduled offerings
Parquet offers significantly better compression and query performance than CSV for large datasets. Its columnar format is perfect for analytical queries where you only need specific columns, and it's become the standard for big data workflows.
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: Dataframes and Statistics
General-purpose programming language widely used for scientific computing and research software.
Languages & frameworks · Teaching
10 topics with recorded teaching · 33 recorded and scheduled offerings
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
Programming language and environment for statistics, data analysis, and visualization.
Languages & frameworks · Teaching
1 topics with recorded teaching · 1 recorded and scheduled offerings
A relevant choice for statistical and tabular analysis, especially when collaborating with R users. Choose a language that fits the research workflow rather than trying to learn every ecosystem.
Recorded in topic offerings; consult the dated event links for availability.
1 past offerings · 0 upcoming offerings
Related themes: Scientific Computing
Related topics: Dataframes and StatisticsRobust and Reusable Software
Record and reproduce the software environment used for an analysis or application.
Practices · Teaching
0 topics with recorded teaching · 0 recorded and scheduled offerings
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
Statistical data visualization library built on Matplotlib
Libraries · Teaching
2 topics with recorded teaching · 10 recorded and scheduled offerings
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
Query language for selecting, joining, aggregating, and transforming structured data.
Languages & frameworks · Not currently taught
0 topics with recorded teaching · 0 recorded and scheduled offerings
SQL is a compact and widely transferable way to ask precise questions of tabular and database-oriented research data.
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: Dataframes and Statistics
Organize observations and variables consistently for tabular analysis.
Practices · Teaching
0 topics with recorded teaching · 0 recorded and scheduled offerings
Consistent tabular structures make transformations, visualizations, and statistical comparisons easier to understand and reuse; other data models may suit arrays or specialized recordings better.
Discussed in our dataframe and statistics topics; individual offerings are not yet attributed to this practice.
0 past offerings · 0 upcoming offerings
Related themes: Scientific Computing
Related topics: Dataframes and Statistics
Python library for parallel and out-of-core computing with familiar NumPy, Pandas, and xarray-style interfaces.
Libraries · Teaching
2 topics with recorded teaching · 2 recorded and scheduled offerings
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
In-process SQL database designed for analytical queries
Tools & platforms · Teaching
1 topics with recorded teaching · 1 recorded and scheduled offerings
DuckDB brings the power of SQL to your research data without the complexity of server setup. It's incredibly fast for analytical queries, works directly with Pandas DataFrames and Parquet files, and requires zero configuration. Perfect for querying large datasets that don't fit in memory.
Recorded in topic offerings; consult the dated event links for availability.
1 past offerings · 0 upcoming offerings
Related themes: Scientific Computing
Related topics: Dataframes and StatisticsRobust and Reusable Software
Unified filesystem interface for Python providing consistent API across local and remote storage
Libraries · Teaching
1 topics with recorded teaching · 1 recorded and scheduled offerings
fsspec provides a single, consistent interface for working with files whether they're on your local disk, in the cloud, or on GitHub. This means you can write code once and access data from multiple sources without changing your file operations.
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: Automating Research WorkflowsCalcium Imaging AnalysisDataframes and Statistics
Python interface for reading and writing HDF5 files.
Libraries · Teaching
2 topics with recorded teaching · 2 recorded and scheduled offerings
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
Network Common Data Form for array-oriented scientific data
Data formats · Teaching
1 topics with recorded teaching · 1 recorded and scheduled offerings
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
DataFrame validation library for checking tabular data schemas and assumptions in Python.
Libraries · Teaching
1 topics with recorded teaching · 1 recorded and scheduled offerings
Pandera makes assumptions about tabular data explicit, testable, and reusable, which helps prevent subtle data-cleaning mistakes from propagating into analysis results.
Recorded in topic offerings; consult the dated event links for availability.
0 past offerings · 1 upcoming offerings
Related themes: Scientific Computing
Related topics: Dataframes and StatisticsRobust and Reusable Software
Statistical package for Python focused on ease of use and readable output for common statistical tests
Libraries · Teaching
2 topics with recorded teaching · 10 recorded and scheduled offerings
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
Grammar-of-graphics plotting library for Python, inspired by ggplot2.
Libraries · Teaching
0 topics with recorded teaching · 0 recorded and scheduled offerings
plotnine gives Python users a declarative way to build statistical graphics, which can make complex plots easier to reason about and adapt across related datasets.
Recorded in topic offerings; consult the dated event links for availability.
0 past offerings · 0 upcoming offerings
Related themes: Scientific Computing
Related topics: Dataframes and Statistics
Fast DataFrame library with eager and lazy APIs for tabular data processing.
Libraries · Teaching
1 topics with recorded teaching · 1 recorded and scheduled offerings
Polars is useful when tabular workflows need more speed, lower memory use, or lazy query planning while remaining approachable for Python users.
Recorded in topic offerings; consult the dated event links for availability.
1 past offerings · 0 upcoming offerings
Related themes: Neural Data AnalysisScientific Computing
Related topics: Dataframes and StatisticsNeural Spike AnalysisRobust and Reusable Software
Statistical functions and probability distributions from SciPy's stats module.
Libraries · Teaching
1 topics with recorded teaching · 1 recorded and scheduled offerings
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
N-dimensional labeled arrays and datasets for scientific data analysis
Libraries · Teaching
2 topics with recorded teaching · 2 recorded and scheduled offerings
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
For tutoring, collaboration, or follow-up support, contact the team. We are happy to help you connect workshop ideas with your own research practice.