Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reorganization #7

Open
wants to merge 6 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
140 changes: 72 additions & 68 deletions _toc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,86 +4,90 @@
format: jb-book
root: index
parts:
- caption: Lessons
- caption: Core Python Progression
chapters:
- file: lessons/general_python/index.md
- file: sarp_lessons/1_python_progression/1-general_python/index.md
sections:
- file: lessons/general_python/1_variables_types_ifstatements
- file: lessons/general_python/2_lists_dictionaries
- file: lessons/general_python/datetimes
- file: lessons/general_python/spatial_data
- file: lessons/gridded_data/index.md
- file: sarp_lessons/1_python_progression/1-general_python/1-1_variables_types_ifstatements
- file: sarp_lessons/1_python_progression/1-general_python/1-2_lists_dictionaries
- file: sarp_lessons/1_python_progression/2-tabular_data/index.md
sections:
- file: lessons/gridded_data/1_xarray
- file: lessons/gridded_data/2_xarray_computation
- file: lessons/gridded_data/3_xarray_groupby
- file: lessons/gridded_data/spatial_operations
- file: lessons/tabular_data/index.md
- file: sarp_lessons/1_python_progression/2-tabular_data/2-1_pandas
- file: sarp_lessons/1_python_progression/2-tabular_data/2-2_filtering_groupby
- file: sarp_lessons/1_python_progression/3-gridded_data/index.md
sections:
- file: lessons/tabular_data/1_pandas
- file: lessons/tabular_data/2_filtering_groupby
- file: lessons/tabular_data/3_geopandas
- file: lessons/tabular_data/static_visualization_matplotlib
- file: lessons/tabular_data/mapping_colors
- file: sarp_lessons/1_python_progression/3-gridded_data/3-1_xarray
- file: sarp_lessons/1_python_progression/3-gridded_data/3-2_xarray_computation
- file: sarp_lessons/1_python_progression/3-gridded_data/3-3_xarray_groupby
- file: sarp_lessons/1_python_progression/4-spatiotemporal/index.md
sections:
- file: sarp_lessons/1_python_progression/4-spatiotemporal/4-1_datetimes
- file: sarp_lessons/1_python_progression/4-spatiotemporal/4-2_spatial_data
- file: sarp_lessons/1_python_progression/4-spatiotemporal/4-3_geopandas
- file: sarp_lessons/1_python_progression/4-spatiotemporal/4-4_spatial_operations_rio
- file: sarp_lessons/1_python_progression/4-spatiotemporal/4-5_mapping_cartopy
- file: sarp_lessons/1_python_progression/5-visualization/index.md
sections:
- file: sarp_lessons/1_python_progression/5-visualization/5-1_static_viz_matplotlib
- file: sarp_lessons/1_python_progression/5-visualization/5-2_building_on_matplotlib
- file: sarp_lessons/1_python_progression/5-visualization/5-3_dynamic_visualization
- file: sarp_lessons/1_python_progression/5-visualization/5-4_viewing_images

- caption: Additional Lectures
- caption: Computational Skills
chapters:
- file: additional_lectures/Debugging/debugging_lesson
- file: additional_lectures/time_series_statistics/oceans_stats_examples
- file: sarp_lessons/2_computational_skills/file_organization
- file: sarp_lessons/2_computational_skills/debugging_lesson
- file: additional_lectures/hierarchical_data/hierarchical_data
- file: additional_lectures/rasters/index.md
sections:
- file: additional_lectures/rasters/1_arrays_numpy
- file: additional_lectures/rasters/2_raster_fundamentals
- file: additional_lectures/rasters/3_accessing_coordinates
- file: additional_lectures/Visualization/index.md
sections:
- file: additional_lectures/Visualization/2_building_on_matplotlib
- file: additional_lectures/Visualization/3_dynamic_visualization
- file: additional_lectures/Visualization/viewing_images
# - file: additional_lectures/rasters/index.md
# sections:
# - file: additional_lectures/rasters/1_arrays_numpy
# - file: additional_lectures/rasters/2_raster_fundamentals
# - file: additional_lectures/rasters/3_accessing_coordinates

- caption: Practice Sheets
- caption: Open Science
chapters:
- file: lessons/index_practice.md
title: General Python Practice
sections:
- file: lessons/general_python/practice/1_variables_data_practice
- file: lessons/general_python/practice/2_lists_dicts_practice
- file: lessons/general_python/practice/datetimes_practice
- file: lessons/general_python/practice/spatial_data_practice
- file: lessons/general_python/practice/1_variables_data_answers
- file: lessons/general_python/practice/2_lists_dicts_answers
- file: lessons/general_python/practice/datetimes_answers
- file: lessons/general_python/practice/spatial_data_answers
- file: lessons/index_practice_raster.md
title: Gridded Data Practice
sections:
- file: lessons/gridded_data/practice/1_xarray_practice
- file: lessons/gridded_data/practice/2_xarray_practice
- file: lessons/gridded_data/practice/1_xarray_answers
- file: lessons/index_practice_tabular.md
title: Tabular Data Practice
sections:
- file: lessons/tabular_data/practice/1_pandas_practice
- file: lessons/tabular_data/practice/2_filtering_groupby_practice
- file: lessons/tabular_data/practice/3_geopandas_practice
- file: lessons/tabular_data/practice/1_pandas_answers
- file: lessons/tabular_data/practice/2_filtering_groupby_answers
- file: additional_lectures/index_practice.md
title: Raster Data Practice (Additional Lectures)
- file: sarp_lessons/3_open_science/cloud_lesson

- caption: Practice Problems & Answers # Switch to "Exercises"?
chapters:
- file: sarp_lessons/4_practice_problems/index.md
title: Python Practice
sections:
- file: additional_lectures/rasters/practice/1_arrays_numpy_practice
- file: additional_lectures/rasters/practice/2_raster_fundamentals_practice
- file: additional_lectures/rasters/practice/3_accessing_coordinates_practice
- file: additional_lectures/rasters/practice/1_arrays_numpy_answers
- file: sarp_lessons/4_practice_problems/1_python/1-1_variables_data_practice
- file: sarp_lessons/4_practice_problems/1_python/1-1_variables_data_answers
- file: sarp_lessons/4_practice_problems/1_python/1-2_lists_dicts_practice
- file: sarp_lessons/4_practice_problems/1_python/1-2_lists_dicts_answers
- file: sarp_lessons/4_practice_problems/1_python/2-1_pandas_practice
- file: sarp_lessons/4_practice_problems/1_python/2-1_pandas_answers
- file: sarp_lessons/4_practice_problems/1_python/2-2_filtering_groupby_practice
- file: sarp_lessons/4_practice_problems/1_python/2-2_filtering_groupby_answers
- file: sarp_lessons/4_practice_problems/1_python/3-1_xarray_practice
- file: sarp_lessons/4_practice_problems/1_python/3-1_xarray_answers
- file: sarp_lessons/4_practice_problems/1_python/3-2_xarray_practice
- file: sarp_lessons/4_practice_problems/1_python/4-1_datetimes_practice
- file: sarp_lessons/4_practice_problems/1_python/4-1_datetimes_answers
- file: sarp_lessons/4_practice_problems/1_python/4-2_spatial_data_practice
- file: sarp_lessons/4_practice_problems/1_python/4-2_spatial_data_answers
- file: sarp_lessons/4_practice_problems/1_python/4-3_geopandas_practice

- caption: Examples
# - file: additional_lectures/index_practice.md
# title: Raster Data Practice (Additional Lectures)
# sections:
# - file: additional_lectures/rasters/practice/1_arrays_numpy_practice
# - file: additional_lectures/rasters/practice/2_raster_fundamentals_practice
# - file: additional_lectures/rasters/practice/3_accessing_coordinates_practice
# - file: additional_lectures/rasters/practice/1_arrays_numpy_answers

- caption: Example Gallery
chapters:
- file: examples/logplot
- file: examples/flight_track
- file: examples/altitude_twin_axes
- file: examples/gridded_mapping
- file: sarp_lessons/5_example_gallery/index.md
sections:
- file: sarp_lessons/5_example_gallery/logplot
- file: sarp_lessons/5_example_gallery/flight_track
- file: sarp_lessons/5_example_gallery/altitude_twin_axes
- file: sarp_lessons/5_example_gallery/gridded_mapping

- caption: Contributor Guide
chapters:
- file: contributing/env_setup.md
- file: sarp_lessons/6_contributors_instructors/instructors_guide
- file: sarp_lessons/6_contributors_instructors/env_setup.md
4 changes: 0 additions & 4 deletions additional_lectures/Visualization/index.md

This file was deleted.

16 changes: 15 additions & 1 deletion developer_env.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,21 @@
name: sarp_docs
name: sarp_docs2
channels:
- conda-forge
# Using Python3.10
dependencies:
- ipykernel
- geopandas
- xarray[complete]
- rasterio
- dask
- h5py
- netcdf4
- earthaccess
- openpyxl
- seaborn
- bokeh
- cartopy
- shapely
- jupyter-book
- sphinx >= 6.2.0 # imghdr deprecation error
- ghp-import
33 changes: 19 additions & 14 deletions index.md
Original file line number Diff line number Diff line change
@@ -1,27 +1,32 @@
# Welcome to SARP Programming
# Python Programming for Earth Science Researchers

The [NASA Student Airborne Research Program (SARP)](https://www.nasa.gov/centers/ames/earthscience/programs/airbornescience/studentairborneresearchprogram) is an earth science reasearch internship for undergraduates held every summer. The program is based out of Irvine, CA and Newport News, VA. At SARP, students experience 8 weeks of hands on NASA research and data training. This website hosts the online content for the programming instruction for the internship.
This website contains content for learning Python as an Earth Science researcher. It focuses on building core programming and computational skills that are applicable to researchers.

This year SARP is fortunate to have access to the [Cryocloud platform](https://book.cryointhecloud.com/intro.html) for student research projects. The cloud is an exciting new science tool that allows researchers to more easily collaborate, spend less time setting up software environments, and scale their data analysis. Tutorials relating to doing science on the cloud are also hosted on this website.
The materials were developed at the [NASA Student Airborne Research Program (SARP)](https://www.nasa.gov/centers/ames/earthscience/programs/airbornescience/studentairborneresearchprogram), and continues to be used by instructors. SARP is an earth science reasearch internship for undergraduates held every summer. The program is based out of California and Virginia. At SARP, students experience 8 weeks of hands on NASA research and data training {cite}`schaller_2022`.

## Website Organization
This year, SARP is fortunate to have access to the [Cryocloud platform](https://book.cryointhecloud.com/intro.html) for student research projects. The cloud is an exciting new science tool that allows researchers to more easily collaborate, spend less time setting up software environments, and scale their data analysis. Tutorials relating to doing science on the cloud are also hosted on this website.

## Organization
The contents of this website is split into three sections:

* **Lessons** - Notebooks used for a lesson during the two code-intensive weeks. Many lessons include practice problems and answers in the Practice Sheets section
* **Additional Lectures** - Less formal notebooks accompanying more sporadic as-needed instruction throughout the summer
* **Practice Sheets** - Notebooks with practice problems to accompany some of the lessons
* **Examples** - Example code for common analyses or visualizations
* **Contributor Guide** - Want to help make this website better? Find out more about how you can do that in the Contributor Guide
* **Core Python Progression** - Instructional material for learning Python. Many lessons include practice problems and answers in the Practice Sheets section.
* **Computational Skills** - Notebooks focusing on more general computational skills to complement and round out the Python lessons.
* **Open Science** - Notebooks focusing on additional technical competencies relating to open science.
* **Practice Problems & Answers** - Practice problems to accompany selected lessons.
* **Example Gallery** - Example code for common analyses or visualizations.
* **Contributor's Guide** - Want to help make this website better? Find out more about how you can do that in the Contributor Guide.

### Data Format Tracks
The Lessons section is divided into subsections based on data format. The two data format groups for SARP are:
1. gridded data - data in an array format that representing information in space. This format is often used for satellite images or model output.
2. tabular data - data with rows and columns. This is data that would fit well in an excel sheet
## Where to start

There is also a General Python section, which contains material relevant for anyone learning Python. In SARP everyone will work on the General Python section together, then we will split into two groups based on the two data formats described above.
If you're a student, check out the **Core Python Progression**. This section can be followed as a step by step flow to build Python skills. Once you've gotten through the first two lessons, intermittently explore some of the lessons in the **Computational Skills** section. These are invaluable for developing a holistic understanding of programming.

If your an educator, check out the **Instructor's Guide**. This section gives an introduction to the core instructional concepts and provides suggestions for how this material might be used in your classroom.

## Table of Contents

```{tableofcontents}
```

## Jupyter Book Citations
```{bibliography}
```
8 changes: 0 additions & 8 deletions lessons/.spyproject/config/backups/codestyle.ini.bak

This file was deleted.

6 changes: 0 additions & 6 deletions lessons/.spyproject/config/backups/encoding.ini.bak

This file was deleted.

7 changes: 0 additions & 7 deletions lessons/.spyproject/config/backups/vcs.ini.bak

This file was deleted.

10 changes: 0 additions & 10 deletions lessons/.spyproject/config/backups/workspace.ini.bak

This file was deleted.

8 changes: 0 additions & 8 deletions lessons/.spyproject/config/codestyle.ini

This file was deleted.

This file was deleted.

This file was deleted.

4 changes: 0 additions & 4 deletions lessons/.spyproject/config/defaults/defaults-vcs-0.2.0.ini

This file was deleted.

This file was deleted.

6 changes: 0 additions & 6 deletions lessons/.spyproject/config/encoding.ini

This file was deleted.

7 changes: 0 additions & 7 deletions lessons/.spyproject/config/vcs.ini

This file was deleted.

10 changes: 0 additions & 10 deletions lessons/.spyproject/config/workspace.ini

This file was deleted.

Loading