#Import Packages
library(tidyverse)
library(knitr)
library(png)
library(RCurl)
library(magick)
library(grDevices)
library(jpeg)
library(plotrix)
#Import data set from Github and omit blank observations
urlfile="https://tkelleman.github.io/tkweb/week3/w03-penguins.csv"
pendata<-read.csv(url(urlfile))
#A
pendata_no_na <- na.omit(pendata)
#Filter Data based on HW Requirements
#B
PenData.Filter<- filter(pendata_no_na, ((species=="Adelie" | species=="Gentoo") & (island=="Biscoe" | island=="Torgersen")))
#C
PenData.Filter<- filter(PenData.Filter, (body_mass_g <5000 & body_mass_g >3500))
#D
PenData.Filter<- PenData.Filter %>%
mutate(BMI=body_mass_g/4000)
#E
drop<- c("X", "sex", "year", "body_mass_g")
PenData.Filter=PenData.Filter[,!(names(PenData.Filter) %in% drop)]
#Variables
billLength = PenData.Filter$bill_length_mm
flipperLength = PenData.Filter$flipper_length_mm
species = PenData.Filter$species
pointSize = PenData.Filter$BMI
#ID of species
adelie.id = which(species=="Adelie")
gentoo.id = which(species=="Gentoo")
## Plot Colors
par(bg = "#F1FAEE", col.axis = "#1D3557", col.lab = "#1D3557")
## Create Scatter plot (No points - Type "n")
plot(
billLength,
flipperLength,
main = "Bill Length vs Flipper Length \n of Adelie and Gentoo Penguins",
col.main=("#1D3557"),
type = "n",
xlab="Bill Length (mm)",
ylab="Flipper Length (mm)",
)
## Plot Points
points(billLength[adelie.id], flipperLength[adelie.id], pch = 15, col = "#E63946", cex = pointSize[adelie.id])
points(billLength[gentoo.id], flipperLength[gentoo.id], pch = 19, col = "#457B9D", cex = pointSize[gentoo.id])
## Regression Line
adelie.model<-lm(flipperLength[adelie.id] ~ billLength[adelie.id])
abline(adelie.model, lwd =2, col="#E63946")
gentoo.model<-lm(flipperLength[gentoo.id] ~ billLength[gentoo.id])
abline(gentoo.model, lwd =2, col="#457B9D")
## Create Legend
legend("topleft", c("Adelie", "Gentoo"),
col=c("#E63946", "#457B9D"),
pch=c(15, 19))
draw.circle(x=44.10, y =209.9, radius=.25)
The figure above shows the relationship
between the bill length and flipper length of the Adelie and Gentoo
penguin species in the data set. This data set was filtered to only
include complete observations of penguins between 3500g and 5000g body
mass from the Biscoe and Torgersten islands. As shown by this plot, both
species have a positive correlation between bill length and flipper
length, with the Adelie species having a slightly more positive
relationship. There is one notable outlier data point of the Adelie
penguin species, noted by the circled point on the figure.
LS0tDQp0aXRsZTogPHNwYW4gc3R5bGU9ImNvbG9yOiMxRDM1NTciPjxXZWVrIDQgLSBGaWx0ZXJlZCBQZW5ndWluIERhdGE8L3NwYW4+DQphdXRob3I6IDxzcGFuIHN0eWxlPSJjb2xvcjojMUQzNTU3Ij5UaW0gS2VsbGVtYW4gLSBTVEEgNTUzIC0gMi8xNS8yNDwvc3Bhbj4NCg0Kb3V0cHV0Og0KICBodG1sX2RvY3VtZW50OiANCiAgICB0b2M6IHllcw0KICAgIHRvY19kZXB0aDogNA0KICAgIHRvY19mbG9hdDogeWVzDQogICAgZmlnX3dpZHRoOiA4DQogICAgZmlnX2NhcHRpb246IHllcw0KICAgIG51bWJlcl9zZWN0aW9uczogeWVzDQogICAgdG9jX2NvbGxhcHNlZDogeWVzDQogICAgY29kZV9mb2xkaW5nOiBoaWRlDQogICAgY29kZV9kb3dubG9hZDogeWVzDQogICAgc21vb3RoX3Njcm9sbDogdHJ1ZQ0KICAgIHRoZW1lOiByZWFkYWJsZQ0KICAgDQogIHBkZl9kb2N1bWVudDogDQogICAgdG9jOiB5ZXMNCiAgICB0b2NfZGVwdGg6IDQNCiAgICBmaWdfY2FwdGlvbjogeWVzDQogICAgbnVtYmVyX3NlY3Rpb25zOiB5ZXMNCiAgICBmaWdfd2lkdGg6IDUNCiAgICBmaWdfaGVpZ2h0OiA0DQogIA0KLS0tDQo8Ym9keSBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjojRjFGQUVFOyI+DQpgYGB7ciBldmFsPVRSVUUsIGVjaG89VFJVRSwgbWVzc2FnZT1GQUxTRX0NCiNJbXBvcnQgUGFja2FnZXMNCmxpYnJhcnkodGlkeXZlcnNlKQ0KbGlicmFyeShrbml0cikNCmxpYnJhcnkocG5nKQ0KbGlicmFyeShSQ3VybCkNCmxpYnJhcnkobWFnaWNrKQ0KbGlicmFyeShnckRldmljZXMpDQpsaWJyYXJ5KGpwZWcpDQpsaWJyYXJ5KHBsb3RyaXgpDQoNCg0KI0ltcG9ydCBkYXRhIHNldCBmcm9tIEdpdGh1YiBhbmQgb21pdCBibGFuayBvYnNlcnZhdGlvbnMNCnVybGZpbGU9Imh0dHBzOi8vdGtlbGxlbWFuLmdpdGh1Yi5pby90a3dlYi93ZWVrMy93MDMtcGVuZ3VpbnMuY3N2Ig0KcGVuZGF0YTwtcmVhZC5jc3YodXJsKHVybGZpbGUpKQ0KI0ENCnBlbmRhdGFfbm9fbmEgPC0gbmEub21pdChwZW5kYXRhKQ0KDQojRmlsdGVyIERhdGEgYmFzZWQgb24gSFcgUmVxdWlyZW1lbnRzIA0KI0INClBlbkRhdGEuRmlsdGVyPC0gZmlsdGVyKHBlbmRhdGFfbm9fbmEsICgoc3BlY2llcz09IkFkZWxpZSIgfCBzcGVjaWVzPT0iR2VudG9vIikgJiAoaXNsYW5kPT0iQmlzY29lIiB8IGlzbGFuZD09IlRvcmdlcnNlbiIpKSkNCiNDDQpQZW5EYXRhLkZpbHRlcjwtIGZpbHRlcihQZW5EYXRhLkZpbHRlciwgKGJvZHlfbWFzc19nIDw1MDAwICYgYm9keV9tYXNzX2cgPjM1MDApKQ0KI0QNClBlbkRhdGEuRmlsdGVyPC0gUGVuRGF0YS5GaWx0ZXIgJT4lDQogIG11dGF0ZShCTUk9Ym9keV9tYXNzX2cvNDAwMCkNCiNFDQpkcm9wPC0gYygiWCIsICJzZXgiLCAieWVhciIsICJib2R5X21hc3NfZyIpDQpQZW5EYXRhLkZpbHRlcj1QZW5EYXRhLkZpbHRlclssIShuYW1lcyhQZW5EYXRhLkZpbHRlcikgJWluJSBkcm9wKV0NCg0KI1ZhcmlhYmxlcw0KYmlsbExlbmd0aCA9IFBlbkRhdGEuRmlsdGVyJGJpbGxfbGVuZ3RoX21tDQpmbGlwcGVyTGVuZ3RoID0gUGVuRGF0YS5GaWx0ZXIkZmxpcHBlcl9sZW5ndGhfbW0NCnNwZWNpZXMgPSBQZW5EYXRhLkZpbHRlciRzcGVjaWVzDQpwb2ludFNpemUgPSBQZW5EYXRhLkZpbHRlciRCTUkNCg0KI0lEIG9mIHNwZWNpZXMNCmFkZWxpZS5pZCA9IHdoaWNoKHNwZWNpZXM9PSJBZGVsaWUiKQ0KZ2VudG9vLmlkID0gd2hpY2goc3BlY2llcz09IkdlbnRvbyIpDQoNCiMjIFBsb3QgQ29sb3JzDQpwYXIoYmcgPSAiI0YxRkFFRSIsIGNvbC5heGlzID0gIiMxRDM1NTciLCBjb2wubGFiID0gIiMxRDM1NTciKQ0KDQojIyBDcmVhdGUgU2NhdHRlciBwbG90IChObyBwb2ludHMgLSBUeXBlICJuIikNCnBsb3QoDQogIGJpbGxMZW5ndGgsIA0KICBmbGlwcGVyTGVuZ3RoLCANCiAgbWFpbiA9ICJCaWxsIExlbmd0aCB2cyBGbGlwcGVyIExlbmd0aCBcbiBvZiBBZGVsaWUgYW5kIEdlbnRvbyBQZW5ndWlucyIsIA0KICBjb2wubWFpbj0oIiMxRDM1NTciKSwNCiAgdHlwZSA9ICJuIiwgICANCiAgeGxhYj0iQmlsbCBMZW5ndGggKG1tKSIsICANCiAgeWxhYj0iRmxpcHBlciBMZW5ndGggKG1tKSIsDQopDQoNCiMjIFBsb3QgUG9pbnRzDQpwb2ludHMoYmlsbExlbmd0aFthZGVsaWUuaWRdLCBmbGlwcGVyTGVuZ3RoW2FkZWxpZS5pZF0sIHBjaCA9IDE1LCBjb2wgPSAiI0U2Mzk0NiIsIGNleCA9IHBvaW50U2l6ZVthZGVsaWUuaWRdKQ0KcG9pbnRzKGJpbGxMZW5ndGhbZ2VudG9vLmlkXSwgZmxpcHBlckxlbmd0aFtnZW50b28uaWRdLCBwY2ggPSAxOSwgY29sID0gIiM0NTdCOUQiLCBjZXggPSBwb2ludFNpemVbZ2VudG9vLmlkXSkNCg0KIyMgUmVncmVzc2lvbiBMaW5lDQphZGVsaWUubW9kZWw8LWxtKGZsaXBwZXJMZW5ndGhbYWRlbGllLmlkXSB+IGJpbGxMZW5ndGhbYWRlbGllLmlkXSkNCmFibGluZShhZGVsaWUubW9kZWwsIGx3ZCA9MiwgY29sPSIjRTYzOTQ2IikNCg0KZ2VudG9vLm1vZGVsPC1sbShmbGlwcGVyTGVuZ3RoW2dlbnRvby5pZF0gfiBiaWxsTGVuZ3RoW2dlbnRvby5pZF0pDQphYmxpbmUoZ2VudG9vLm1vZGVsLCBsd2QgPTIsIGNvbD0iIzQ1N0I5RCIpDQoNCg0KIyMgQ3JlYXRlIExlZ2VuZA0KbGVnZW5kKCJ0b3BsZWZ0IiwgYygiQWRlbGllIiwgIkdlbnRvbyIpLCANCiAgICAgICBjb2w9YygiI0U2Mzk0NiIsICIjNDU3QjlEIiksDQogICAgICAgcGNoPWMoMTUsIDE5KSkNCg0KZHJhdy5jaXJjbGUoeD00NC4xMCwgeSA9MjA5LjksIHJhZGl1cz0uMjUpDQoNCmBgYA0KPHNwYW4gc3R5bGU9ImNvbG9yOiMxRDM1NTciPlRoZSBmaWd1cmUgYWJvdmUgc2hvd3MgdGhlIHJlbGF0aW9uc2hpcCBiZXR3ZWVuIHRoZSBiaWxsIGxlbmd0aCBhbmQgZmxpcHBlciBsZW5ndGggb2YgdGhlIEFkZWxpZSBhbmQgR2VudG9vIHBlbmd1aW4gc3BlY2llcyBpbiB0aGUgZGF0YSBzZXQuIFRoaXMgZGF0YSBzZXQgd2FzIGZpbHRlcmVkIHRvIG9ubHkgaW5jbHVkZSBjb21wbGV0ZSBvYnNlcnZhdGlvbnMgb2YgcGVuZ3VpbnMgYmV0d2VlbiAzNTAwZyBhbmQgNTAwMGcgYm9keSBtYXNzIGZyb20gdGhlIEJpc2NvZSBhbmQgVG9yZ2Vyc3RlbiBpc2xhbmRzLiBBcyBzaG93biBieSB0aGlzIHBsb3QsIGJvdGggc3BlY2llcyBoYXZlIGEgcG9zaXRpdmUgY29ycmVsYXRpb24gYmV0d2VlbiBiaWxsIGxlbmd0aCBhbmQgZmxpcHBlciBsZW5ndGgsIHdpdGggdGhlIEFkZWxpZSBzcGVjaWVzIGhhdmluZyBhIHNsaWdodGx5IG1vcmUgcG9zaXRpdmUgcmVsYXRpb25zaGlwLiBUaGVyZSBpcyBvbmUgbm90YWJsZSBvdXRsaWVyIGRhdGEgcG9pbnQgb2YgdGhlIEFkZWxpZSBwZW5ndWluIHNwZWNpZXMsIG5vdGVkIGJ5IHRoZSBjaXJjbGVkIHBvaW50IG9uIHRoZSBmaWd1cmUuIA0KDQo8L3NwYW4+