Giter Site home page Giter Site logo

datacarpentry / r-intro-geospatial Goto Github PK

View Code? Open in Web Editor NEW
46.0 15.0 70.0 126.08 MB

Introduction to R for Geospatial Data

Home Page: https://datacarpentry.org/r-intro-geospatial/

License: Other

R 92.74% Shell 1.13% TeX 6.14%
carpentries data-carpentry lesson r data-wrangling data-visualisation data-visualization english geospatial-data geospatial

r-intro-geospatial's Introduction

DOI Website Create a Slack Account with us Slack Status

Intro to R for Geospatial data

An introduction to R for non-programmers using the Gapminder data. Please see https://datacarpentry.org/r-intro-geospatial for a rendered version of this material, the lesson template documentation for instructions on formatting, building, and submitting material, or run make in this directory for a list of helpful commands.

The goal of this lesson is to revise best practices for using R in data analysis. This lesson is a modification of the Software Carpentry: Programming with R, and is part of the Data Carpentry Geospatial Curriculum. It introduces the R skills needed in the Introduction to Raster and Vector Geospatial Data lesson.

R is commonly used in many scientific disciplines for statistical analysis and its array of third-party packages. These materials are designed to provide attendees with a concise introduction in the fundamentals of R, and to introdue best practices for scientific computing: breaking down analyses into modular units, task automation, and encapsulation, before getting started with working with geospatial data.

Note that this workshop focuses on the fundamentals of the programming language R, and not on statistical analysis.

The lesson contains material than can be taught in about 4 hours. The instructor notes page has some suggested lesson plans suitable for a one or half day workshop.

Maintainers:

  • Johanna Bayer
  • Mike Mahoney
  • Alber Sánchez

Previous maintainers:

  • Leah Wasser
  • Jemma Stachelek
  • Tyson Swetnam
  • Lauren O'Brien
  • Janani Selvaraj
  • Lachlan Deer
  • Chris Prener
  • Juan Fung

r-intro-geospatial's People

Contributors

aammd avatar abought avatar ateucher avatar bbolker avatar bkatiemills avatar claresloggett avatar erinbecker avatar fmichonneau avatar griffinp avatar hdashnow avatar jcoliver avatar jrnold avatar jsta avatar juanfung avatar kbroman avatar lachlandeer avatar mawds avatar mikemahoney218 avatar mkuzak avatar naupaka avatar nfaux avatar nlesniak avatar remi-daigle avatar rgaiacs avatar rmcd1024 avatar serahkiburu avatar sritchie73 avatar tem11010 avatar tomwright01 avatar vince-p avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

r-intro-geospatial's Issues

change ggplot examples

Episode 6 is currently titled "Creating Publication-Quality Graphics". The original episode that this was copied from went into a lot more detail and actually did end with the learners creating publication quality graphics. However, we've cut this episode down a lot and the graphics the learners make are not anywhere near publication quality. This isn't a problem - we have an episode in the raster vector lesson (https://datacarpentry.org/r-raster-vector-geospatial/13-plot-time-series-rasters-in-r/index.html) that goes into a lot of detail and makes a really nice publication-quality graphic. However, it does mean that we should change some things in this episode to update it to the current content:

  • rename the episode to something like "Introduction to Visualization"
  • add a note at the end of the episode stating that the next lesson in the workshop (raster vector lesson) goes into a lot of detail about plotting and any questions not answered here will hopefully be answered there. Include a bulleted list of what they will learn about ggplot in the raster vector lesson?
  • add a note at the beginning of the episode stating that this episode covers just the bare essentials in ggplot and that a lot more is coming in the raster vector lesson.
  • condense the short paragraphs at the start of the episode to one paragraph
  • update the plotting examples so that they create graphics that are meaningful without further modification. These examples work well in the original lesson, because they are further refined with faceting and other tricks, however they aren't interpretable in their current form.

"Remove column" & "Remove row" section belong to "Subsetting Data" lesson?

http://www.datacarpentry.org/r-intro-geospatial/05-data-structures-part2/

Section on removing column & removing row should be part of "subsetting data" which comes in next lesson. Awkward to introduce cats[-4,] syntax without first going through what cats[4,] mean. Likewise, it's also awkward to do drop <- names(cats) %in% c("age"); cats[,!drop] without any explanation on what is %in% and what's the rationale behind !drop.

update intro on index

Intro on index.md assumes a full day lesson. The pre-reqs should also be updated, as we're not assuming learners know how to set a path (I think).

Creating publication-quality graphics: error for the last plot(s)

FYI I reviewed/tested this lesson as part of my instructor check-out, but plan to do this for a few more in the Geospatial curriculum.

In the lesson "Creating publication-quality graphics", there is an error generating the last plot, section "Modifying text". The data being called, az.countries does not exist. I have gone through the lessons before this part, but cannot find it anywhere.

I have changed this section (and submitted a pull request, #38) so it reflects the plot that was made in the section before. This required also making some changes in the accompanying text, because
a) making the x-axis blank does not make any sense for this plot; so I added font size changes so theme is still in the code - I added to the text that with these commands you can change family, face, color and size.
b) the axis tick labels should be changed from 1e+04 to 10,000 etc. I am not excited that this has to be done using labels = scales::comma as just labels = comma does not seem to work (anymore). I'm not sure why. Is this too confusing?

This also takes the facet_wrap() component out - which in my personal opinion is a good thing... However if facet_wrap() needs to stay in, it should be changed to continent or year as country makes no sense for this data. It creates a ridiculous number of plots that you can't see anything on. I am not crazy about the plots that are generated though (if size of the points and smoother are kept the same). So in this current pull request, facet_wrap() has been taken out

Also in this section: the mention of fill comes out of the blue. I added a line to explain it a little (this is also not in the visualization part in the Ecology curriculum btw).

Lastly, the plot for the final challenge (number 5) does not work out. I'm quite sure I have the correct data for testing this, because the I do get the exact same plot for challenge 4b. I have attached the plot that is generated.

NOTE: the code for the new plot works fine when I run the chunk, and the plot for Challenge 5 indeed doesn't work out - as described above. However when I knit the .Rmd, the html shows a completely different plot with facets for the new plot, and it does generate the correct output for the density plots...! I'm confused!

density_plot

WARNING: Change of default branch!

I'm going to set up Travis on this repository to enable automatic build and deployment of the website. To make this change possible, we need to switch the default branch to master. gh-pages will be an orphan branch that will only contain the files used to render the website.

Before making any other changes to this repository, make sure to switch to master and create branches from your pull requests using master as the base branch.

Don't hesitate to let me know if you have any questions or need help with this.

Suggestions for Exploring Data Frames Challenge 3

While I think the direction to talk to other learners is nice, it is confusing that the info learners enter into the new rows doesn't match what was in it before or the column labels.

I suggest, having them add a row that has d 4 TRUE in it and using rbind. Then having them create a 2nd data frame df_ef which has the rows e 5 FALSE and f 6 FALSE in it and using rbind

Episode 2 Project Management With RStudio: A Possible Solution - here::here() instead of getwd()

Suggest using the here package for finding the top level directory of a project and building system-agnostic file paths relative to this.

Install the here package:

install.packages("here")

Load the here package:

library("here")

The here package creates paths relative to the top-level directory and the package displays the top-level of the current project on load or any time you call the here() function:

here()
#> [1] "/home/user/dir/subdir/project_top_level"

You can build a path relative to the top-level directory:

here("data", "example_data.csv")
#> [1] "/home/user/dir/subdir/project_top_level/data/example_data.csv"

These relative paths can be used in order to read or write a file:

readr::read_csv(here("data", "example_data.csv"))

Lesson Contribution - Solution to Challenge 3

I'm a member of The Carpentries staff and I'm submitting this issue on behalf of another member of the community. In most cases I won't be able to follow up or provide more details other that what I'm providing below.


The lesson is
Data carpentry: Geospatial Data Curriculum: Introduction to R for Geospatial Data: Data Structures: Solution to Challenge 3:
nordic <- read.csv(file="data/nordic-data.csv", colClasses=c(NA, NA, "character"))
str(nordic$country)

It (colClasses code) should be as follows.
nordic <- read.csv(file="data/nordic-data.csv", colClasses=c("character", NA, NA))
str(nordic$country)
Because, in the original nordic csv file, the countries are mentioned in the 1st column which is the only factor in the dataset. The code mention in the lesson will maintain the third column (lifeExp) as a character (not the country column).

install.packages() in Episode 1 or not?

install.packages() is mentioned in the Questions and the Key Points for Episode 1, but never actually used. It ought to be demonstrated somewhere, but I don't yet know where it would go best. (I will only be teaching this lesson for the first time a few days from now.)

Or if install.packages() doesn't appropriately belong anywhere, then it should be removed from the Questions and Key Points.

Remove all ggplot facet wrap examples

To synthesize this episode it would be good to remove all instances of facet_wrap() since it is not essential to know to move into the Geospatial with R lesson.

This means we should do the following in episode 8:

  • Change the "modifying text" section to have an example that doesn't facet_wrap
  • Remove challenge 5
  • Create a different challenge that allows learners to create a different plot and do some text modifications with axis labels

RFC: Migration to R 4.0

During the June Maintainer meeting, we asked for comments and experiences with the migration to R 4.0 so that we could create guidance for maintainers and instructors. We have drafted a short blog post (carpentries/carpentries.org#830) to be released next week (2020-08-03) that describes our recommendations for migration. You can find a preview of the blog post here. Please look over the blog posts and make comments by 2020-07-30 so that we can incoroporate any changes before the post goes live.

To help identify the differences between R 3.6 and R 4.0, I have run this lesson in both versions and posted the results that show the differences in output chunks and entire markdown files.

Episode 4: Data Structures: Exploring Data Frames - `rbind` and factors

R is not giving a warning when executing rbind(gapminder, new_row). gapminder$continent is not a factor.

To understand why R is giving us a warning when we try to add this row, let's learn a little more about factors.

It does, however, for the same reason, generate a warning message after running this:
levels(gapminder$continent) <- c(levels(gapminder$continent), "Nordic")
gapminder_norway <- rbind(gapminder, list('Norway', 2016, 5000000, 'Nordic', 80.3,49400.0, FALSE))

And the fix suggested gapminder$continent <- as.character(gapminder$continent) also needs to be adjusted.

update README

The README.md file gives a lot of information about the original repo that this lesson was copied from. Update the Maintainer names, Slack badges, and any other information that is changing.

Add split-apply-combine explanation to dplyr episode

In previous experience teaching dplyr I have found that using Hadley Wickham's split-apply-combine language has helped students understand the power of dplyr, and might make some of the later exercises (and diagrams) easier to understand.

Lesson release checklist

Lesson Release checklist

For each lesson release, copy this checklist to an issue and check off
during preparation for release

Scheduled Freeze Date: 2018-06-13
Scheduled Release Date: 2018-06-15

Checklist of tasks to complete before release:

  • check that the learning objectives reflect the content of the lessons
  • check that learning objectives are phrased as statements using action words
  • check for typos
  • check that the live coding examples work as expected
  • if example code generates warnings, explain in narrative and instructor notes
  • check that challenges and their solutions work as expected
  • check that the challenges test skills that have been seen
  • check that the setup instructions are up to date (e.g., update version numbers)
  • check that data is available and mentions of the data in the lessons are accurate
  • check that the instructor guide is up to date with the content of the lessons
  • check that all the links within the lessons work (this should be automated)
  • check that the cheat sheets included in lessons are up to date (e.g., RStudio updates them regularly)
  • check that languge is clear and free of idioms and colloquialisms
  • make sure formatting of the code in the lesson looks good (e.g. line breaks)
  • check for clarity and flow of narrative
  • update README as needed
  • fill out “overview” for each module - minutes needed for teaching and exercises, questions and learning objectives
  • check that contributor guidelines are clear and consistent
  • clean up files (e.g. delete deprecated files, insure filenames are consistent)
  • update the release notes (NEWS)
  • tag release on GitHub

remove exercise that requires shell command line

Challenge 2 in Episode 2 requires learners to be familiar with the bash shell command line. This is appropriate for the lesson that these episodes were copied from, as learners in that workshop will have taken shell prior to the R lesson, however, shell is not a component of the Geospatial lessons. This exercise should be removed.

screen shot 2018-07-10 at 3 01 50 pm

Remove matrix examples in `control-flow` episode

Problem: Some of the material in control flow utilizes matrices

reason for change: in this condensed intro lesson we do not introduce matrices since they are not super essential for working with geospatial data

task: Clean out any instances of code and text that rely on using matrices

suggestions for trimming down this lesson

I know that there's been a lot of discussion about how to make this lesson shorter to ensure that there is enough time during the workshop to really dig deeply into working with raster and vector data in R.

Here are my suggestions for things to remove from this lesson (organized by episode). I'm making these suggestions from the perspective of comparing this R lesson with the Data Carpentry Ecology R lesson - there are some things that aren't covered in the Ecology lesson, and the learners do fine without it. If, however, these topics are needed specifically for working with raster or vector data, then we shouldn't take them out!

In total, my suggested cuts would save 235 minutes, cutting this lesson down from almost 8 hours to 4 hours.

Introduction to R and RStudio

  • Mathematical functions
  • Vectorization (I know this is going to cause controversy, but introducing this so early is counter productive. Better to introduce this in a practical context later on.)
  • Managing your environment
  • R Packages - add this intro to first time an external package is used
    These suggestions would bring the episode down to ~20 minutes teaching and 5 minutes exercises (save 30 minutes). Addressed with #24

Project Management with RStudio

  • ProjectTemplate - a possible solution
  • Separate function definition and application
  • avoiding duplication
  • Tip: command line in R Studio
  • Version Control
    All of these are good strategies, but too advanced and/or theoretical for the audience that typically attends DC workshops.
    These suggestions would bring the episode down to 10 minutes teaching and 5 minutes exercises (saves 15 minutes). Addressed with #25.

Seeking Help
I tend to skip this episode and mention the things that it talks about at various points in the rest of the R lesson I'm teaching. I find that at this point in the lesson learners haven't seen more than one or two functions (and none if we get rid of the mathematical functions section above), so the concept of reading help files for functions just isn't applicable to them yet.
If we do keep this episode, I suggest getting rid of:

  • Special operators
  • When you have no idea where to begin
  • When your code doesn’t work: seeking help from your peers (too advanced)
    and keeping just the first two challenges.
    20 minutes saved by getting rid of these episode entirely. 10 minutes saved if the above sections removed. Addressed with #26.

Data Structures
I suggest removing this episode entirely and moving into the Exploring Data Frames episode. All of the data structures (other than lists) are covered in that episode. If this episode is kept, the following sections can be removed.

  • Data Types
  • Factors (these are covered in depth in the next episode)
  • Lists (unless needed for the raster vector lessons)
    Save 55 minutes if this episode is removed entirely. These suggestions would bring the episode down to 25 minutes teaching and 10 minutes exercises (saves 20 minutes). (see comment in thread below)

Exploring Data Frames

  • shorten output cells in this episode, the full dataframe is printed each time and it's hard to read the lesson
    Addressed with #27.

Subsetting Data

  • I suggest changing the examples in this episode so that they all refer to the Gapminder data that the learners just read into their environment in the previous episode. Moving back to a toy / unrealistic data example is counter productive here. (see comment in thread below)
  • Tip: Non-unique names
  • List subsetting (unless needed for working with the data in the raster vector lesson.
    These suggestions shorten the episode to 25 minutes teaching, 10 minutes exercises (saves 15 minutes).
    Addressed with #29

Control Flow

  • I recommend getting rid of this episode entirely, unless if statements and loops are required for the raster vector lesson.
    (saves 60 minutes).
    Addressed with #30

Creating Publication-quality Graphics

  • This episode has already been shortened from the original and is now probably about 50 minutes teaching (not 60). I recommend also removing:
  • Transformations and statistics
  • Modifying text
    These can be covered in more depth in the raster vector lessons where they will be more relevant to the learners.
    These suggestions shorten the episode to 25 minutes teaching, 10 minutes exercises (saves 45 minutes).
    Addressed with #34

Writing Data

  • no changes suggested

Dataframe manipulation with dplyr

  • Connect mutate with logical filtering: ifelse
  • Combining dplyr and ggplot2
  • Advanced Challenge
    These suggestions shorten the episode to 30 minutes teaching and 10 minutes exercises (saves 15 minutes)
    Addressed with #34

Writing good software
Recommend deleting this episode as it focuses on practices for writing software, not for data analysis. Many of the same principles apply, but the focus doesn't seem to me right for a data analytic focused audience.
This suggestion would save 15 minutes.
Addressed with #34

Synthesize "Exploring Data frames"

Problem: We want to shrink down the entire lesson, and this section is quite long.

Task: reduce the quantity of information in this lesson / alter the structure.

  • A first pass at this might be to try integrate the components of the work with the feline data into the 'realistic example' using gapminder. And then restructure so that the most important parts appear closer to the front.

Removing factors

This might be covered by #78 but thought I would explicitly suggest it. Need to update since in R4.0.0+ read.csv has stringsAsFactors=FALSE by default.

I suggest removing the factors section in the Data Structures episode and removing the factors section in the Exploring Data Frames episode. I think both of those sections should lift right out.

If factors are needed for the Raster and Vector lesson, then I would suggest still removing them from Exploring Data Frames but keeping them in Data Structures

Project Management Directory Tips under "Data Cleaning" are not consistent or complementary.

The two tips on directory structure are not complementary and cause a little confusion. First you explain one set of "Good Enough Practice" directories to use for data management, then have people use the ProjectTemplate package to create a DIFFERENT set of directories, but don't explain their use.

Might to be a good idea to combine them by simply adopting the ProjectTemplate package method and explaining how to use the directory structure it provides, rather than illuminating the use of one set of directories in the first, then demonstrating a package that installs a different set of directories and NOT explaining their relevance.

contribution submitted by email

The following is an instructor-training email contribution to the Data Carpentry lesson "Introduction to R for Geospatial Data", as a part of my instructor training checkout. Attached is a pdf and R Markdown file with the proposed change. I hope this contribution is helpful. Please let me know if I can provide additional materials.

My contribution could fit in the 03-data-structures part of the lesson here (https://datacarpentry.org/r-intro-geospatial/03-data-structures-part1/index.html ) just under "Data Types".

As data structures are being introduced, why introduce two numeric variables, xLongitude and yLatitude, and plot them with both 'plot' from the base graphics library and with 'map' from the 'maps' package?

Requirements: R version 3.5.0 or higher, internet connection to install one R library
Optional: R Studio 1.1.453 or higher
Purpose: gain early success with geospatial data in R with less than ten lines of code
Reason for change or update: The lesson could use a simple, early-success geospatial data example, prior to more in-depth procedures.
Lesson learned: R has built-in plotting capabilities, which can be used for visualizing geospatial data. With the addition of the "maps" package, this plotting can be used with base map elements such as the United States and World base maps.

Code:

xLongitude <- 106.67
yLatitude <- 35.07
class(xLongitude)

plot(xLongitude,yLatitude)

install.packages("maps")
library(maps)

map("usa")
points(x,y, col="gray")

geospatial_edit.txt

ggsave isntead of pdf in writing data

Think we should change this to use ggsave. Typically a more common way to save ggplots and is more strightforward than using the plot device pdf save.

Remove episodes 7+

For the adaptation of these lessons for the Geospatial curriculum, we will be removing most or all of the material in episodes 7 and above. Please look through the content of episodes 7+ to confirm that we can safely remove them from this repo.

Change in the sequence of the episode Introduction to R and RStudio

In the Introduction to R and RStudio episode

I would recommend explaining the hidden variable before giving it in Challenge 1

Challenge 2 and 3 Should be placed in Variables and assignment section

Challenge 4 should be in the section where remove object is discussed

R Packages section should include some example and also some basic errors and ways to handle them should be included in this section.
"unable to access index for repository https://cran.rstudio.com/src/contrib:
cannot open URL 'https://cran.rstudio.com/src/contrib/PACKAGES'"

Challenge 5 needs to be a below section of R Packages and can include removing and updating package codes instead of just installing the given packages.

Check for redundancies

This lesson will be taught as the first lesson in the Geospatial workshop. The raster-vector lessons will be taught later in the workshop. Go through the raster-vector lessons and remove things that are redundant with this repo.

June 2019 Lesson Release checklist

If your Maintainer team has decided not to participate in the June 2019 lesson release, please close this issue.

To have this lesson included in the 18 June 2019 release, please confirm that the following items are true:

  • Example code chunks run as expected
  • Challenges / exercises run as expected
  • Challenge / exercise solutions are correct
  • Call out boxes (exercises, discussions, tips, etc) render correctly
  • A schedule appears on the lesson homepage (e.g. not “00:00”)
  • Each episode includes learning objectives
  • Each episode includes questions
  • Each episode includes key points
  • Setup instructions are up-to-date, correct, clear, and complete
  • File structure is clean (e.g. delete deprecated files, insure filenames are consistent)
  • Some Instructor notes are provided
  • Lesson links work as expected

When all checkboxes above are completed, this lesson will be added to the 18 June lesson release. Please leave a comment on carpentries/lesson-infrastructure#26 or contact Erin Becker with questions ([email protected]).

Keypoints and objectives don't match for Exploring Data Frames episode

The Exploring Data Frames episode has an objective and keypoints that aren't' covered.

Specifically the objective objectives...

  • Remove rows with NA values.
    and the keypoints...
  • Remove rows from a data frame.
  • Use na.omit() to remove rows from a data frame with NA values.

Also this one doesn't use typeof() - shoudl be class() instead

  • Use str(), nrow(), ncol(), dim(), colnames(), rownames(), head(), and typeof() to understand the structure of a data frame.

Transition to standardized GitHub labels

The lesson infrastructure committee unanimously approved the proposal of using the same set of labels across all our repositories during its last meeting on May 23rd, 2018.

This repository has now been converted to use the standard set of labels.

If this repository used the previous set of recommended labels by Software Carpentry, they have been converted to the new one using the following rules:

SWC legacy labels New 'The Carpentries' labels
bug type:bug
discussion type:discussion
enhancement type:enhancement
help-wanted help wanted
newcomer-friendly good first issue
template-and-tools type:template and tools
work-in-progress status:in progress

The label instructor-training was removed as it is not used in the workflow of certifying new instructors anymore. The label question was left as is when it was in use, and removed otherwise. If your repository used custom labels (and issues were flagged with these labels), they were left as is.

The lesson infrastructure committee hopes the standard set of labels will make it easier for you to manage the issues you receive on the repositories you manage.

The lesson infrastructure committee will evaluate how the labels are being used in the next few months and we will solicit your feedback at this stage. In the meantime, if you have any questions or concerns, please leave a comment on this issue.

-- The Lesson Infrastructure subcommittee

PS: we will close this issue in 30 days if there is no activity.

Lesson Contribution - Moving paragraphs to clarify R vs RStudio

I'm a member of The Carpentries Core Team and I'm submitting this issue on behalf of another member of the community. In most cases, I won't be able to follow up or provide more details other than what I'm providing below.

In the Introduction to R and RStudio episode, I suggest moving the first two paragraphs of the "Intro to R" section to the "Before Starting the Workshop" section or make a new section called "R versus RStudio." Then explain that R is the language you will use and RStudio is the editor that you will work with the R language in. When I first started R this year, I had no idea there was a difference, so it might be worth distinguishing them for novice learners at the very beginning. Then explain that R is often used to refer to both the programming language and RStudio, even within this lesson.

Rogue `ggplot.pdf`

There is what appears to be a "rogue" pdf in the repo ggplot.pdf

Looks like there is not link to it in lesson and it needs to be removed.

clarifying download step (submitted by email for instructor training checkout)

on the Setup page, clarify that the Nordic datasets used in the Project Management and Data Structures lessons will be downloaded in Challenge 1 of the Project Management lesson. At the top of the Data Structures lesson, it currently states, "Let's start by downloading and reading in a file nordic-data.csv." I recommend adding a note that points users to either the Challenge 1 in the Project Management lesson, or to an addendum to the Setup section. Similarly, pointing users to the "Exploring Data Frames" lesson to allow them to catch up and download the gapminder dataset if they are in the "Subsetting Data" lesson would be great. Alternatively, this download could also be added to the "Setup" page.

Episode 3 Data Structures: Challenge 1 solution: factor is now character

03-data-structures-part1.Rmd:

The solution text to Challenge 1 should be changed from:

"The data in nordic_2$lifeExp is stored as factors rather than numeric. This is because of the “or” character string in the third data point. “Factor” is R’s special term for categorical data. We will be working more with factor data later in this workshop."

to

"The data in nordic_2$lifeExp is stored as character rather than numeric. This is because of the “or” character string in the third data point."

> > The data in `nordic_2$lifeExp` is stored as factors rather than

Remove examples / content using base `plot`

With the r-raster-vector lesson moving to ggplot it would be great to remove any examples in episodes that use the base plot()

There is at least one instance in the control-flow section

Update Maintainers/Authors in README.md

Hi,

It appears that the list of maintainers is not up-to-date. It does not match the list provided at https://datacarpentry.org/lessons/ (geospatial curriculum section). It would be good to update it. Is everything correct with the list provided at the previous link? Can I update based on that?
Previous maintainers could be listed under a "Previous maintainers" or "Alumni maintainers" section, to acknowledge their contribution. Do you agree?
Finally, a list of authors (original developers of the lesson) should be included as well in a separate section. Who are the original authors?

Luca

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.