As part of a class in Landscape Genetics, faculty (mostly done by Melanie Murphy and Jeffrey Evans) compiled an extensive list of spatial data sources. These were made available on the course website we hosted but I wanted to make a more persistent copy of them here so they will not be lost. They are listed below the break.
This semester, I’ll be leading a graduate course in applied ecological statistics. Should be a lot of fun getting a group of people up to speed on the benefits of being an R guru!
OK, so I just ‘found‘ shiny and it has a lot of cool stuff to it. OK, I’ve known about it for a long time but have just had the opportunity to sit down and work it out and see how it can fit into the presentation and learning I’m trying to develop in my Applied Population Genetics online textbook. Here is a brief overview of how I set up the shiny server on my Ubuntu box that is hosting the book (so I can embed more interactivity in the display).
Environmental Research Advisory Committee meeting
Virginia Transportation Research Council
The spring meeting of the VDOT ERAC is this week and Bonnie and I will be going to provide some feedback on what we’ve been doing on the project the last two months (it is pretty early yet, we are just getting going). Should be fun, lots of cool other projects being presented. See the slides below the fold.
A very cool writeup on making blow out maps.
Here are some very useful cheat sheets put out by RStudio. A great resource of information!
I just uploaded a new plugin for RStudio called dlab. I’ll be migrating over all the little helper functions I use to this as a general require() on startup. What it has now is an AddIn that allows you to select text and have it wrapped in the r-code markup. I’m moving stuff between ePub and Markdown and it was needed.
You can install it as:
then look at the AddIns menu for wrapCode.
Here it is, time for student presentations all around! I thought it would be nice to send this presentation around again to remind everyone what make good (and sucky) presentations. More below the fold.
The program STRUCTURE is an ubiquitous feature of many population genetic studies these days—if it is appropriate is another question. Today, while covering model based clustering in population genetics, we ran into a problem where STRUCTURE was unable to run and the OS said it was Corrupted and should be thrown away. Jump below for our fix, it really is an easy one.
An analysis common to modern population genetics is that of finding ecological distances between objects on a landscape. The estimation of pairwise distance derived from spatial data is a computationally intensive thing, one that if you are not careful will bring your laptop to its knees! One way to mitigate this data problem is to use a minimal amount raster area so that the estimation of the underlying distance graph can be done on a smaller set of points. This example provides a simple solution using convex hulls. Jump below for the complete example.
It is often the case that the raster we are working with is not the exact size of the area from which our data are collected. It is a much easier situation if the raster is larger than the area than if you need to stitch together two raster Tiles to get all your data onto one extent. In my doctoral thesis work, the area of the southern Ozark mountains that my sites were in was not only straddling a boundary between existing rasters, it was also at the boundary of two UTM zones! What a pain.
A raster is essentially an image, whose pixel size correspond to a particular spatial extent and the data contained within each pixel represents a particular feature on the landscape. Common rasters are DEM’s (measuring elevation), rainfall, temperature, buildings, etc. In R, it is common to think of rasters as matrices whose values measure some feature on the landscape. In this section, we will examine how to acquire, load, manipulate, and extract data from raster objects.
Here are the slides for the lecture on inbreeding.
How big is the data set you are analyzing? Apparently it depends on how you count…