Learning Objectives
Following this assignment students should be able to:
- understand the basic rules of tidy data
- implement quality control for data entry in spreadsheets
- create an SQL database by importing data
Reading
Lecture Notes
- Course Introduction
- Demo Code for Where Students Can Get in the Course
- Tidy Data
- Data Entry
- Introduction to Databases
Exercises
-- Improving Messy Data --
A lot of real data isn’t very tidy, mostly because most scientists aren’t taught about how to structure their data in a way that is easy to analyze.
Download a messy version of some of the Portal Project data. Note that there are multiple tabs in this spreadsheet.
Think about what could be improved about this data. In a text file (to be turned in as part of the assignment):
1-5. Describe five things about this data that are not tidy and how you could fix each of those issues.
6. Could this data easily be imported into a database in its current form?
7. Do you think it’s a good idea to enter the data like this and clean it up later, or to have a good data structure for analysis by the time data is being entered? Why?
-- Data entry validation in Excel --
You’re starting a new study of small mammals at the NEON site at Ordway-Swisher. Create a spreadsheet in Excel for data entry. It should have four columns: Year, Site, Species, and Mass.
Set the following data validation criteria to prevent any obviously wrong data from getting entered:
- Year must be an integer between 2015 and 2025.
- Site should be one of the following
A1
,A2
,B1
,B2
. - Species should be one of the following
Dipodomys spectabilis
,Dipodomys ordii
,Dipodomys merriami
. - Mass should be a decimal greater than or equal to zero but less than or equal to 500 since mass is measured in grams in this study and nothing bigger than half a kilogram will possibly fit into your Sherman traps. Change the error message on this validation criteria to explain why data is invalid and what the valid values are.
Save this file as
yourname_ordway_mammal_data.xlsx
.-- Importing Data --
This example will walk you through how to get data that already exists into SQLite.
- Download the main table for the Portal Project mammal database. It’s kind of large so it might take a few seconds. The full database is available on GitHub and updated monthly. We’ll use a simplified version in class.
- Create a new database by clicking on
New Database
in theDatabase
drop down menu. Typeportal_mammals
for the name, clickOK
and choose where to save the file. - Click on the
Import
icon. - Click on
Select File
and navigate to where you saved the data file and select it. - Select
CSV
. You can also import from SQL databases or modify theFields separated
orenclosed by
. Make sure to selectFirst row contains column names
. - Click
OK
when it asks if you want to modify the data. - Name the table that you are importing into
surveys
. - Identify the type for each field, using the
Data Type
drop-down menus. If it is not obvious if the data type is anINTEGER
orVARCHAR
for each variable, check the metadata. Important: if you specify the wrong data type it can cause some data to not be imported and/or prevent you from doing some kinds of data manipulations. - Select
recordID
as thePrimary Key
and clickOK
. - Click
OK
when asked if you are sure you want to import the data. - Now import the plots, and species tables.