Skip to content

Latest commit

 

History

History
471 lines (395 loc) · 18 KB

index.md

File metadata and controls

471 lines (395 loc) · 18 KB
layout venue address country language latitude longitude humandate humantime startdate enddate instructor helper email collaborative_notes eventbrite
workshop
Woods Hole Oceanographic Institution (online)
Zoom link:
us
en
41
-70
May 21, 2020
8:45 am - 12:30 pm EDT
2020-05-21
2020-05-21
Amber York
Karen Soenen, Brett Longworth, Stace Beaulieu
adyork@whoi.edu

{% comment %} See instructions in the comments below for how to edit specific sections of this workshop template. {% endcomment %}

{% comment %} HEADER Edit the values in the block above to be appropriate for your workshop. If the value is not 'true', 'false', 'null', or a number, please use double quotation marks around the value, unless specified otherwise. And run 'make workshop-check' before committing to make sure that changes are good. {% endcomment %}

{% comment %} Check DC curriculum {% endcomment %}

{% if site.carpentry == "dc" or site.carpentry == "dc" %} {% unless site.curriculum == "dc-ecology" or site.curriculum == "dc-genomics" or site.curriculum == "dc-socsci" or site.curriculum == "dc-geospatial" %}

It looks like you are setting up a website for a Data Carpentry curriculum but you haven't specified the curriculum type in the _config.yml file (current value in _config.yml: "{{ site.curriculum }}", possible values: dc-ecology, dc-genomics, dc-socsci, or dc-geospatial). After editing this file, you need to run make serve again to see the changes reflected.
{% endunless %} {% endif %}

General Information

{% comment %} INTRODUCTION Edit the general explanatory paragraph below if you want to change the pitch. {% endcomment %}

{% if site.carpentry == "swc" %} {% include swc/intro.html %} {% elsif site.carpentry == "dc" %} {% include dc/intro.html %} {% elsif site.carpentry == "lc" %} {% include lc/intro.html %} {% endif %}

Are you tired of hand-editing your data to fix errors and formatting issues? Harness the power of regular expressions (regex) to search, match, and manipulate your data.

Whether you are new to regular expressions or would like an overview of capabilities to level up your regex game, this workshop is for you! No programming experience is required. These skills can be implemented in many programming languages, text editors, and the command line.

{% comment %} AUDIENCE Explain who your audience is. (In particular, tell readers if the workshop is only open to people from a particular institution. {% endcomment %}

{% if site.carpentry == "swc" %} {% include swc/who.html %} {% elsif site.carpentry == "dc" %} {% include dc/who.html %} {% elsif site.carpentry == "lc" %} {% include lc/who.html %} {% endif %}

This workshop is targeted towards the technical WHOI staff in order to improve project efficiency and build technical skills. It will only be held for 10 people at a time through an online Zoom meeting. Registration is required. Please contact stace@whoi.edu for availability.

Workshop sponsorship: WHOI Academic Programs Doherty Award and a DDVPR Technical Staff Training Award.

{% comment %} LOCATION {% endcomment %}

{% comment %} DATE This block displays the date and links to Google Calendar. {% endcomment %}

{% comment %} {% if page.humandate %}

When: {{page.humandate}}. {% include workshop_calendar.html %}

{% endif %} {% endcomment %}

{% if page.humandate %}

When: {{page.humandate}}

{% endif %}

{% comment %}

SPECIAL REQUIREMENTS

Modify the block below if there are any special requirements. {% endcomment %}

Requirements:

  • A desktop or laptop computer.
  • Participants will need to join a Zoom video conference. Installing free zoom conference software is recommended. You will not need a paid account. See Joining a meeting from Zoom Help Center
  • A web browser. Students will use a free, online regular expression editor (e.g. https://regex101.com/)
  • No other software or operating system required.

Handouts: These are not required materials but they are useful for reference.

{% comment %} ACCESSIBILITY Modify the block below if there are any barriers to accessibility or special instructions. {% endcomment %}

Accessibility: {% if online == "false" %} We are committed to making this workshop accessible to everybody. The workshop organizers have checked that:

  • The room is wheelchair / scooter accessible.
  • Accessible restrooms are available.

Materials will be provided in advance of the workshop and large-print handouts are available if needed by notifying the organizers in advance. If we can help making learning easier for you (e.g. sign-language interpreters, lactation facilities) please get in touch (using contact details below) and we will attempt to provide them. {% else %} We are dedicated to providing a positive and accessible learning environment for all. Please notify the instructors in advance of the workshop if you require any accommodations or if there is anything we can do to make this workshop more accessible to you.

{% endif %}

{% comment %} CONTACT EMAIL ADDRESS

Display the contact email address set in the configuration file. {% endcomment %}

Contact: Please email {% if page.email %} {% for email in page.email %} {% if forloop.last and page.email.size > 1 %} or {% else %} {% unless forloop.first %} , {% endunless %} {% endif %} {{email}} {% endfor %} {% else %} to-be-announced {% endif %} for more information.


Why should I learn regular expressions?

  • If you have ever had to clean a dataset to change timestamps in various formats into one consistent format, regex is for you.
  • If you have had to comb through data files to find all abundance values next to a specific set of specific species identifiers, regex is for you.
  • If you have had to make repetitive changes to data in flat files, regex is for you.

Regular expressions can seem like a mysterious super-power but there is no need to be intimidated. We are going to go through this together. Once you get a handle on them they can make life a lot easier for you!

Regular expression xkcd comic Creative Commons License by xkcd https://xkcd.com/208/

{% comment %}

SYLLABUS

Show what topics will be covered.

  1. If your workshop is R rather than Python, remove the comment around that section and put a comment around the Python section.
  2. Some workshops will delete SQL.
  3. Please make sure the list of topics is synchronized with what you intend to teach.
  4. You may need to move the div's with class="col-md-6" around inside the div's with class="row" to balance the multi-column layout.

This is one of the places where people frequently make mistakes, so please preview your site before committing, and make sure to run 'tools/check' as well. {% endcomment %}

{% comment %}

{% if site.carpentry == "swc" %} {% include swc/syllabus.html %} {% elsif site.carpentry == "dc" %} {% include dc/syllabus.html %} {% elsif site.carpentry == "lc" %} {% include lc/syllabus.html %} {% endif %}


{% endcomment %}

{% comment%} CODE OF CONDUCT {% endcomment %}

Code of Conduct

We will be using the Carpentries code of conduct for this workshop.

Everyone who participates in this workshop is required to conform to the Code of Conduct.

{% comment %}

This document also outlines how to report an incident if needed.

Report a Code of Conduct Incident

{% endcomment %}

{% comment %} Collaborative Notes

If you want to use an Etherpad, go to

https://pad.carpentries.org/YYYY-MM-DD-site

where 'YYYY-MM-DD-site' is the identifier for your workshop, e.g., '2015-06-10-esu'.

Note we also have a CodiMD (the open-source version of HackMD) available at https://codimd.carpentries.org {% endcomment %} {% if page.collaborative_notes %}

Collaborative Notes

We will use this collaborative document for chatting, taking notes, and sharing URLs and bits of code.


{% endif %}

{% comment %} SURVEYS - DO NOT EDIT SURVEY LINKS {% endcomment %}

Surveys

Please be sure to complete these surveys before and after the workshop. If you aleady filled out a survey for the WHOI workshop on May 22nd, you don't have to fill this out again.

Pre-workshop Survey

Post-workshop Survey


{% comment %} SCHEDULE

Show the workshop's schedule. Edit the items and times in the table to match your plans. You may also want to change 'Day 1' and 'Day 2' to be actual dates or days of the week.

Schedule

{% endcomment %}

{% if site.carpentry == "swc" %} {% include swc/schedule.html %} {% elsif site.carpentry == "dc" %} {% include dc/schedule.html %} {% elsif site.carpentry == "lc" %} {% include lc/schedule.html %} {% endif %}


{% comment %} SETUP

{% endcomment %}

Setup

{% comment %}

To participate in a {% if site.carpentry == "swc" %} Software Carpentry {% elsif site.carpentry == "dc" %} Data Carpentry {% elsif site.carpentry == "lc" %} Library Carpentry {% endif %} workshop, you will need access to the software described below. In addition, you will need an up-to-date web browser.

{% endcomment %}

It is recommended that you download and install free Zoom conference software. No other setup required. See Joining a meeting from Zoom Help Center).

You will need an up-to-date web browser.

{% comment %}

We maintain a list of common issues that occur during installation as a reference for instructors that may be useful on the Configuration Problems and Solutions wiki page.

{% endcomment %}

Schedule and Syllabus

This workshop will use content from the Library Carpentry Regular Expression lesson. See https://carpentries.org/ for more information about the Carpentries organization.

Participants will receive an overview of regular expression capabilities and where they can be used (languages, command line, text-editors, etc.).

We will cover regular expression patterns and syntax as well as strategies for forming regular expression patterns. Using an online regular expression editor we will see in real-time how our patterns match and manipulate data.

Participants will be given exercises to practice regular expression skills.

08:45 0. Intro Meet your instructor and helpers. Learn what resources and tools we will be using during this workshop.
09:00 1. Regular Expressions (RegEx) Intro What are regular expressions, and what can they do? How can you imagine using regular expressions in your work?
09:30 2. Matching & Extracting

How can you use regular expressions to match and extract strings?

  • Match words, emails, and phone numbers in the Code of Conduct using regex101.com
  • Exercise finding email addresses using regex101.com
9:45 Break 15 min break
10:00 2. Matching & Substitution

RegEx challenges based upon your data examples, and past data submissions to BCO-DMO.

  • Convert a comma delimited list into separate lines.
  • Modify timestamps to ISO format and add a time zone.
  • Transform a file list into a csv tableSplit data in one column into separate data columns (e.g. KM1208_station1_cast5.csv -> csv table with columns cruise_id,station,cast).
  • Match genus, species, and an identifier in a sample name to add a scientific name and identifier column.
10:45 Break 15 min break
11:00 3. "Choose your own adventure!"

Pick activities and we will share our results.

  • Pick an exercise(s) from Exercises
  • Or come up with your own example.
11:30 4. Going Further

We will cover some more concepts and resources you can consult when using regular expressions in your work.

11:45 Break 15 min break
12:00 Questions?
12:15 Wrap-Up & Resources