Very bare bones code, but a reasonable way to start. Other work that should be done: rename column headers; change codes for other rivers from “O” to “Ohio” and “M” to “Monongahela”, etc.
#install.packages("RCurl")
library(RCurl)
## Loading required package: bitops
url <- "https://archive.ics.uci.edu/ml/machine-learning-databases/bridges/bridges.data.version2"
bridge_data <-getURL(url)
#getwd()
bridge_df <- read.csv(text=bridge_data,header=F,sep=",", stringsAsFactors = FALSE)
#bridge_df
head(bridge_df)
## V1 V2 V3 V4 V5 V6 V7 V8 V9 V10 V11 V12 V13
## 1 E1 M 3 CRAFTS HIGHWAY ? 2 N THROUGH WOOD SHORT S WOOD
## 2 E2 A 25 CRAFTS HIGHWAY MEDIUM 2 N THROUGH WOOD SHORT S WOOD
## 3 E3 A 39 CRAFTS AQUEDUCT ? 1 N THROUGH WOOD ? S WOOD
## 4 E5 A 29 CRAFTS HIGHWAY MEDIUM 2 N THROUGH WOOD SHORT S WOOD
## 5 E6 M 23 CRAFTS HIGHWAY ? 2 N THROUGH WOOD ? S WOOD
## 6 E7 A 27 CRAFTS HIGHWAY SHORT 2 N THROUGH WOOD MEDIUM S WOOD
bridge_df <- bridge_df[,c(2,6,7)]
#View(bridge_df)
# Three rivers are: Allegheny, Monongahela, Ohio
# Note that to get this code to work, we needed to go back to our read.csv,
# and add stringsAsFactors = FALSE
bridge_df$V2[bridge_df$V2=="A"] <- "Allegheny"
#View(bridge_df)
str(bridge_df)
## 'data.frame': 108 obs. of 3 variables:
## $ V2: chr "M" "Allegheny" "Allegheny" "Allegheny" ...
## $ V6: chr "?" "MEDIUM" "?" "MEDIUM" ...
## $ V7: chr "2" "2" "1" "2" ...