{"action":"created","comment":{"url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/pulls/comments/44989576","id":44989576,"diff_hunk":"@@ -74,197 +72,240 @@ Read more about the `raster` package in R.</a>\n </div>\n \n #Manipulating Rasters in R\n-\n-We often want to overlay two or more rasters on top of each other, and perform\n-calculations to create a new output raster. For example, we might have a lidar\n-`Digital Surface Model (DSM)` that tells us the elevation at the top of the earths surface.\n-This means that it is the elevation at the tops of trees, buildings and all other\n-objects on the earth. In comparison, a `Digital Terrain Model (DTM)` or `Digital Elevation\n-Model (DEM)` contains elevation data for the actual ground (with trees, buildings and \n-other objects removed). \n-\n-In ecology, we are often interested in measuring the heights of trees and so the\n-raster that we really want is the `difference` between the `DSM` and the `DTM`.\n-This data product is often referred to as a `Canopy Height Model (CHM)` and represents\n-the actual height of trees, buildings etc above the ground.\n-\n-We can calculate this difference by subtracting the two rasters in `R`. However\n-if our rasters get large, we can calculate the difference more efficiently using\n-the `overlay` function. \n-\n-First, let's create and plot a `CHM` by subtracting two rasters - we often call\n-this `raster math` in the geospatial world.\n-\n+As introduced in Lesson 02, we often want to overlay two or more rasters on top \n+of each other, and perform calculations to create a new output raster. If \n+interested in measuring the heights of trees, then what we really want is the \n+`difference` between the Digital Surface Model (`DSM`, tops of trees) and the \n+Digital Terrain Model (`DTM`, ground level) .This data product is often referred\n+to as a Canopy Height Model (`CHM`) and represents the actual height of trees, \n+buildings, etc above the ground.\n+\n+We can calculate this difference in two different ways:\n+1) by subtracting the two rasters in `R` \n+or if our rasters are large\n+2) using the `overlay()` function to more efficiently calculate the difference.\n+\n+First, we'll learn the intuitive first step of subtracting layers to create and\n+plot a `CHM`.  In the geospatial world we often call\n+this *raster math*.\n+\n+If you completed Lessons 00 and 02 you've already loaded and viewed \n+`HARV_dtmCrop.tif` and `HARV_dsmCrop.tif` and can skip this code chunk.  If you \n+have not completed it, let's load and check out our raster files. \n ```{r load-libraries }\n-\n #load raster package\n library(raster)\n \n-#view info about the dtm raster data\n+#view info about the dtm & dsm raster data\n GDALinfo(\"NEON_RemoteSensing/HARV/DTM/HARV_dtmCrop.tif\")\n-\n-#load the DTM\n+GDALinfo(\"NEON_RemoteSensing/HARV/DTM/HARV_dsmCrop.tif\")\n+#load the DTM & DSM rasters\n DTM <- raster(\"NEON_RemoteSensing/HARV/DTM/HARV_dtmCrop.tif\")\n-\n-#create a quick plot\n+DSM <- raster(\"NEON_RemoteSensing/HARV/DSM/HARV_dsmCrop.tif\")\n+#create a quick plot of each to see what we're dealing with\n plot(DTM,\n      main=\"Digital Terrain Model (Elevation)\\n Harvard Forest\")\n \n-#If it isn't already loaded, load the DSM as well \n-DSM <- raster(\"NEON_RemoteSensing/HARV/DSM/HARV_dsmCrop.tif\")\n-\n+plot(DSM,\n+     main=\"Digital Surface Model (Elevation)\\n Harvard Forest\")\n ```\n \n Once the data are loaded, we can use mathametical operations on them.\n-For instance, we can subtract the DTM from the DSM to create a `Canopy Height\n-Model`.\n+For instance, we can subtract the DTM from the DSM to create a Canopy Height\n+Model.\n \n ```{r raster-math }\n # Raster math example\n-\n-CHM <- DSM - DTM #This section could be automatable later on\n+CHM <- DSM - DTM \n \n #view the output CHM\n plot(CHM,\n      main=\"NEON Canopy Height Model - Subtracted\\n Harvard Forest\") \n ```\n-\n-#Exploring Raster Data Values\n-\n-It's often a good idea to explore the range of values in a raster dataset just like\n-we might explore a dataset that we collected in the field. We can do this using\n-the `hist` function in `R`.\n-\n-What range of values do you expect to see for the Harvard Forest `Canopy Height \n-Model (CHM)` that we just created?\n-\n-\n-```{r view-histogram }\n-\n-#Create histogram of CHM values\n+Notice the legend on the right.  We are now looking at the height of the canopy \n+instead of the elevation hence the smaller numbers.  \n+\n+#Challenge: Exploring Raster Values in CHM\n+As we learned in previous lessons, it's often a good idea to explore the range \n+of values in a raster dataset just like we might explore a dataset that we \n+collected in the field.  \n+\n+1. What range of values do you expect to see for the Harvard Forest Canopy \n+Height Model (`CHM`) that we just created? \n+2. What are two ways you can check this range of data in CHM? \n+3. Plot your data in such a way that you can see the range of data values in \n+CHM.\n+4. Bonus challenge: Change the color of and add a title to the plot you created \n+in question 3. \n+\n+```{r challenge-code-1 }\n+#1) Depends on types of trees.  0m to <50m?\n+#2) Looks at histogram or min/max values. \n+minValue(CHM)\n+maxValue(CHM)\n+#3) \n+hist(CHM, maxpixels=ncell(CHM))\n+\n+#4)\n hist(CHM, \n      col = \"purple\",\n-     main = \"Histogram of NEON Canopy Height Model\\n Harvard Forest\")\n+     main = \"Histogram of NEON Canopy Height Model\\n Harvard Forest\",\n+     maxpixels=ncell(CHM))\n \n ```\n \n-#Raster Overlay\n-\n-Raster math is an appropriate aporoach to this calculation if\n+#Efficient Raster Math: Overlay Function\n+Basic raster math like we just did, is an appropriate aporoach to a calculation \n+if\n \n 1. The rasters we are using are small in size.\n 2. The calculations we are performing are simple.\n \n-Raster math is easy to code up, however it is less efficient as computation becomes\n-more complex or as file sizes become larger. To deal with larger rasters that are\n-stored as individual files we should use the `overlay` function\n+Raster math is intuitive and easy to code, however it is less efficient as \n+computation becomes more complex or as file sizes become larger. The `overlay()`\n+function is more efficient when\n \n-NOTE: If our rasters are stacked and stored as `RasterStack` or `RasterBrick`\n-objects in R, then we can use `calc`.\n-{: .notice }\n+1. The rasters we are using are larger in size. \n+2. The rasters are stored as individual files. \n+3. The computations needed are complex. \n \n-Let's have a look at how the `overlay` function works. The `overlay` function \n-takes two or more rasters and applies a function to them using efficient processing\n-methods. The syntax looks like:\n+>NOTE: If the rasters are stacked and stored as `RasterStack` or `RasterBrick`\n+>objects in R, then we should use `calc()`. `overlay()` will not work on stacked\n+>rasters. \n \n-`outputRaster <- overlay(raster1, raster2, functionName )`\n+The `overlay()` function takes two or more rasters and applies a function to\n+them using efficient processing methods. The syntax is\n \n-##Writing Functions in R\n-\n-A function represents a set of tasks that need to be repeated over and over. \n-The syntax for a function in R is as follows:\n+`outputRaster <- overlay(raster1, raster2, fun=functionName)`\n \n-`functionName <- function(variable1, variable2){\n+##Writing Functions in R\n+Before we can continue with `overlay()` we need to discuss writing functions. A \n+function represents a set of tasks that need to be repeated over and over. \n \n+LINK TO MORE ABOUT FUNCTIONS IN R \n+I like explanations (how to AND why) here: http://nicercode.github.io/guides/functions/\n+but I'm hesitant to link to blogs that might disappear so also QuickR link:\n+http://www.statmethods.net/management/userfunctions.html\n+Thoughts? \n \n-}\n+A simplified syntax for a function in R is as follows:\n \n-LINK TO MORE ABOUT FUNCTIONS IN R \n+`functionName <- function(variable1, variable2){WhatYouWantDone, WhatToReturn}`\n \n+Let's say we want to create a function that subtracts one raster from another. \n+In our case what we want does is what we want returned so we don't have to \n+specify it twice. \n ```{r create-function }","path":"03-Modify-Raster.Rmd","position":231,"original_position":231,"commit_id":"d9dceda6f96f8440856ca546742d34c5109dd5af","original_commit_id":"d9dceda6f96f8440856ca546742d34c5109dd5af","user":{"login":"mjones01","id":15202683,"avatar_url":"https://avatars.githubusercontent.com/u/15202683?v=3","gravatar_id":"","url":"https://api.github.com/users/mjones01","html_url":"https://github.com/mjones01","followers_url":"https://api.github.com/users/mjones01/followers","following_url":"https://api.github.com/users/mjones01/following{/other_user}","gists_url":"https://api.github.com/users/mjones01/gists{/gist_id}","starred_url":"https://api.github.com/users/mjones01/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mjones01/subscriptions","organizations_url":"https://api.github.com/users/mjones01/orgs","repos_url":"https://api.github.com/users/mjones01/repos","events_url":"https://api.github.com/users/mjones01/events{/privacy}","received_events_url":"https://api.github.com/users/mjones01/received_events","type":"User","site_admin":false},"body":"done, see below","created_at":"2015-11-16T21:55:00Z","updated_at":"2015-11-16T21:55:00Z","html_url":"https://github.com/data-lessons/NEON-R-Spatial-Raster/pull/27#discussion_r44989576","pull_request_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/pulls/27","_links":{"self":{"href":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/pulls/comments/44989576"},"html":{"href":"https://github.com/data-lessons/NEON-R-Spatial-Raster/pull/27#discussion_r44989576"},"pull_request":{"href":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/pulls/27"}}},"pull_request":{"url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/pulls/27","id":50703797,"html_url":"https://github.com/data-lessons/NEON-R-Spatial-Raster/pull/27","diff_url":"https://github.com/data-lessons/NEON-R-Spatial-Raster/pull/27.diff","patch_url":"https://github.com/data-lessons/NEON-R-Spatial-Raster/pull/27.patch","issue_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/issues/27","number":27,"state":"open","locked":false,"title":"Lessons 03 and 04 Rearrangements and Edits","user":{"login":"mjones01","id":15202683,"avatar_url":"https://avatars.githubusercontent.com/u/15202683?v=3","gravatar_id":"","url":"https://api.github.com/users/mjones01","html_url":"https://github.com/mjones01","followers_url":"https://api.github.com/users/mjones01/followers","following_url":"https://api.github.com/users/mjones01/following{/other_user}","gists_url":"https://api.github.com/users/mjones01/gists{/gist_id}","starred_url":"https://api.github.com/users/mjones01/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mjones01/subscriptions","organizations_url":"https://api.github.com/users/mjones01/orgs","repos_url":"https://api.github.com/users/mjones01/repos","events_url":"https://api.github.com/users/mjones01/events{/privacy}","received_events_url":"https://api.github.com/users/mjones01/received_events","type":"User","site_admin":false},"body":"I added to Challenge sections, rearranged the presentation of some of the notes/ bonus material, and added to alignment between lessons. ","created_at":"2015-11-13T23:08:30Z","updated_at":"2015-11-16T21:55:00Z","closed_at":null,"merged_at":null,"merge_commit_sha":"c2f1410360bb3edaa8c2f2b69720d89a2b15946a","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/pulls/27/commits","review_comments_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/pulls/27/comments","review_comment_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/pulls/comments{/number}","comments_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/issues/27/comments","statuses_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/statuses/d9dceda6f96f8440856ca546742d34c5109dd5af","head":{"label":"mjones01:gh-pages","ref":"gh-pages","sha":"d9dceda6f96f8440856ca546742d34c5109dd5af","user":{"login":"mjones01","id":15202683,"avatar_url":"https://avatars.githubusercontent.com/u/15202683?v=3","gravatar_id":"","url":"https://api.github.com/users/mjones01","html_url":"https://github.com/mjones01","followers_url":"https://api.github.com/users/mjones01/followers","following_url":"https://api.github.com/users/mjones01/following{/other_user}","gists_url":"https://api.github.com/users/mjones01/gists{/gist_id}","starred_url":"https://api.github.com/users/mjones01/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mjones01/subscriptions","organizations_url":"https://api.github.com/users/mjones01/orgs","repos_url":"https://api.github.com/users/mjones01/repos","events_url":"https://api.github.com/users/mjones01/events{/privacy}","received_events_url":"https://api.github.com/users/mjones01/received_events","type":"User","site_admin":false},"repo":{"id":46063577,"name":"NEON-R-Spatial-Raster","full_name":"mjones01/NEON-R-Spatial-Raster","owner":{"login":"mjones01","id":15202683,"avatar_url":"https://avatars.githubusercontent.com/u/15202683?v=3","gravatar_id":"","url":"https://api.github.com/users/mjones01","html_url":"https://github.com/mjones01","followers_url":"https://api.github.com/users/mjones01/followers","following_url":"https://api.github.com/users/mjones01/following{/other_user}","gists_url":"https://api.github.com/users/mjones01/gists{/gist_id}","starred_url":"https://api.github.com/users/mjones01/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mjones01/subscriptions","organizations_url":"https://api.github.com/users/mjones01/orgs","repos_url":"https://api.github.com/users/mjones01/repos","events_url":"https://api.github.com/users/mjones01/events{/privacy}","received_events_url":"https://api.github.com/users/mjones01/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/mjones01/NEON-R-Spatial-Raster","description":"NEON and Data Carpentry lesson for Raster spatial data","fork":true,"url":"https://api.github.com/repos/mjones01/NEON-R-Spatial-Raster","forks_url":"https://api.github.com/repos/mjones01/NEON-R-Spatial-Raster/forks","keys_url":"https://api.github.com/repos/mjones01/NEON-R-Spatial-Raster/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mjones01/NEON-R-Spatial-Raster/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mjones01/NEON-R-Spatial-Raster/teams","hooks_url":"https://api.github.com/repos/mjones01/NEON-R-Spatial-Raster/hooks","issue_events_url":"https://api.github.com/repos/mjones01/NEON-R-Spatial-Raster/issues/events{/number}","events_url":"https://api.github.com/repos/mjones01/NEON-R-Spatial-Raster/events","assignees_url":"https://api.github.com/repos/mjones01/NEON-R-Spatial-Raster/assignees{/user}","branches_url":"https://api.github.com/repos/mjones01/NEON-R-Spatial-Raster/branches{/branch}","tags_url":"https://api.github.com/repos/mjones01/NEON-R-Spatial-Raster/tags","blobs_url":"https://api.github.com/repos/mjones01/NEON-R-Spatial-Raster/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mjones01/NEON-R-Spatial-Raster/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mjones01/NEON-R-Spatial-Raster/git/refs{/sha}","trees_url":"https://api.github.com/repos/mjones01/NEON-R-Spatial-Raster/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mjones01/NEON-R-Spatial-Raster/statuses/{sha}","languages_url":"https://api.github.com/repos/mjones01/NEON-R-Spatial-Raster/languages","stargazers_url":"https://api.github.com/repos/mjones01/NEON-R-Spatial-Raster/stargazers","contributors_url":"https://api.github.com/repos/mjones01/NEON-R-Spatial-Raster/contributors","subscribers_url":"https://api.github.com/repos/mjones01/NEON-R-Spatial-Raster/subscribers","subscription_url":"https://api.github.com/repos/mjones01/NEON-R-Spatial-Raster/subscription","commits_url":"https://api.github.com/repos/mjones01/NEON-R-Spatial-Raster/commits{/sha}","git_commits_url":"https://api.github.com/repos/mjones01/NEON-R-Spatial-Raster/git/commits{/sha}","comments_url":"https://api.github.com/repos/mjones01/NEON-R-Spatial-Raster/comments{/number}","issue_comment_url":"https://api.github.com/repos/mjones01/NEON-R-Spatial-Raster/issues/comments{/number}","contents_url":"https://api.github.com/repos/mjones01/NEON-R-Spatial-Raster/contents/{+path}","compare_url":"https://api.github.com/repos/mjones01/NEON-R-Spatial-Raster/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mjones01/NEON-R-Spatial-Raster/merges","archive_url":"https://api.github.com/repos/mjones01/NEON-R-Spatial-Raster/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mjones01/NEON-R-Spatial-Raster/downloads","issues_url":"https://api.github.com/repos/mjones01/NEON-R-Spatial-Raster/issues{/number}","pulls_url":"https://api.github.com/repos/mjones01/NEON-R-Spatial-Raster/pulls{/number}","milestones_url":"https://api.github.com/repos/mjones01/NEON-R-Spatial-Raster/milestones{/number}","notifications_url":"https://api.github.com/repos/mjones01/NEON-R-Spatial-Raster/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mjones01/NEON-R-Spatial-Raster/labels{/name}","releases_url":"https://api.github.com/repos/mjones01/NEON-R-Spatial-Raster/releases{/id}","created_at":"2015-11-12T15:54:29Z","updated_at":"2015-11-12T15:54:31Z","pushed_at":"2015-11-13T23:05:14Z","git_url":"git://github.com/mjones01/NEON-R-Spatial-Raster.git","ssh_url":"git@github.com:mjones01/NEON-R-Spatial-Raster.git","clone_url":"https://github.com/mjones01/NEON-R-Spatial-Raster.git","svn_url":"https://github.com/mjones01/NEON-R-Spatial-Raster","homepage":"http://data-lessons.github.io/NEON-R-Spatial-Raster","size":14237,"stargazers_count":0,"watchers_count":0,"language":"CSS","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"gh-pages"}},"base":{"label":"data-lessons:gh-pages","ref":"gh-pages","sha":"1f52a5cecb14364a00e12e76b9a650a3f2c98a17","user":{"login":"data-lessons","id":10198146,"avatar_url":"https://avatars.githubusercontent.com/u/10198146?v=3","gravatar_id":"","url":"https://api.github.com/users/data-lessons","html_url":"https://github.com/data-lessons","followers_url":"https://api.github.com/users/data-lessons/followers","following_url":"https://api.github.com/users/data-lessons/following{/other_user}","gists_url":"https://api.github.com/users/data-lessons/gists{/gist_id}","starred_url":"https://api.github.com/users/data-lessons/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/data-lessons/subscriptions","organizations_url":"https://api.github.com/users/data-lessons/orgs","repos_url":"https://api.github.com/users/data-lessons/repos","events_url":"https://api.github.com/users/data-lessons/events{/privacy}","received_events_url":"https://api.github.com/users/data-lessons/received_events","type":"Organization","site_admin":false},"repo":{"id":44772343,"name":"NEON-R-Spatial-Raster","full_name":"data-lessons/NEON-R-Spatial-Raster","owner":{"login":"data-lessons","id":10198146,"avatar_url":"https://avatars.githubusercontent.com/u/10198146?v=3","gravatar_id":"","url":"https://api.github.com/users/data-lessons","html_url":"https://github.com/data-lessons","followers_url":"https://api.github.com/users/data-lessons/followers","following_url":"https://api.github.com/users/data-lessons/following{/other_user}","gists_url":"https://api.github.com/users/data-lessons/gists{/gist_id}","starred_url":"https://api.github.com/users/data-lessons/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/data-lessons/subscriptions","organizations_url":"https://api.github.com/users/data-lessons/orgs","repos_url":"https://api.github.com/users/data-lessons/repos","events_url":"https://api.github.com/users/data-lessons/events{/privacy}","received_events_url":"https://api.github.com/users/data-lessons/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/data-lessons/NEON-R-Spatial-Raster","description":"NEON and Data Carpentry lesson for Raster spatial data","fork":false,"url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster","forks_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/forks","keys_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/keys{/key_id}","collaborators_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/teams","hooks_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/hooks","issue_events_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/issues/events{/number}","events_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/events","assignees_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/assignees{/user}","branches_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/branches{/branch}","tags_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/tags","blobs_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/git/refs{/sha}","trees_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/git/trees{/sha}","statuses_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/statuses/{sha}","languages_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/languages","stargazers_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/stargazers","contributors_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/contributors","subscribers_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/subscribers","subscription_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/subscription","commits_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/commits{/sha}","git_commits_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/git/commits{/sha}","comments_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/comments{/number}","issue_comment_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/issues/comments{/number}","contents_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/contents/{+path}","compare_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/compare/{base}...{head}","merges_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/merges","archive_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/downloads","issues_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/issues{/number}","pulls_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/pulls{/number}","milestones_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/milestones{/number}","notifications_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/labels{/name}","releases_url":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/releases{/id}","created_at":"2015-10-22T20:46:44Z","updated_at":"2015-10-31T15:17:14Z","pushed_at":"2015-11-13T23:08:31Z","git_url":"git://github.com/data-lessons/NEON-R-Spatial-Raster.git","ssh_url":"git@github.com:data-lessons/NEON-R-Spatial-Raster.git","clone_url":"https://github.com/data-lessons/NEON-R-Spatial-Raster.git","svn_url":"https://github.com/data-lessons/NEON-R-Spatial-Raster","homepage":"http://data-lessons.github.io/NEON-R-Spatial-Raster","size":14237,"stargazers_count":2,"watchers_count":2,"language":"CSS","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":5,"mirror_url":null,"open_issues_count":18,"forks":5,"open_issues":18,"watchers":2,"default_branch":"gh-pages"}},"_links":{"self":{"href":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/pulls/27"},"html":{"href":"https://github.com/data-lessons/NEON-R-Spatial-Raster/pull/27"},"issue":{"href":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/issues/27"},"comments":{"href":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/issues/27/comments"},"review_comments":{"href":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/pulls/27/comments"},"review_comment":{"href":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/pulls/27/commits"},"statuses":{"href":"https://api.github.com/repos/data-lessons/NEON-R-Spatial-Raster/statuses/d9dceda6f96f8440856ca546742d34c5109dd5af"}}}}