R - Web Verileri

Birçok web sitesi, kullanıcıları tarafından tüketim için veri sağlar. Örneğin, Dünya Sağlık Örgütü (WHO) CSV, txt ve XML dosyaları biçiminde sağlık ve tıbbi bilgiler hakkında raporlar sağlar. R programlarını kullanarak, bu tür web sitelerinden programlı olarak belirli verileri çıkarabiliriz. Web'den veri hurdaya çıkarmak için kullanılan bazı paketler - "RCurl", XML "ve" stringr "olup, URL'lere bağlanmak, dosyalar için gerekli bağlantıları belirlemek ve bunları yerel ortama indirmek için kullanılır.

R Paketlerini Yükleyin

Aşağıdaki paketler, URL'lerin ve dosyalara olan bağlantıların işlenmesi için gereklidir. R Ortamınızda bulunmuyorlarsa, aşağıdaki komutları kullanarak bunları kurabilirsiniz.

install.packages("RCurl")
install.packages("XML")
install.packages("stringr")
install.packages("plyr")

Giriş Verileri

2015 yılı için URL hava durumu verilerini ziyaret edecek ve R kullanarak CSV dosyalarını indireceğiz.

Misal

İşlevi kullanacağız getHTMLLinks()dosyaların URL'lerini toplamak için. O zaman işlevi kullanacağızdownload.file()Dosyaları yerel sisteme kaydetmek için. Aynı kodu birden çok dosya için tekrar tekrar uygulayacağımızdan, birden çok kez çağrılacak bir işlev oluşturacağız. Dosya adları, bu işleve bir R listesi nesnesi biçiminde parametreler olarak aktarılır.

# Read the URL.
url <- "http://www.geos.ed.ac.uk/~weather/jcmb_ws/"

# Gather the html links present in the webpage.
links <- getHTMLLinks(url)

# Identify only the links which point to the JCMB 2015 files. 
filenames <- links[str_detect(links, "JCMB_2015")]

# Store the file names as a list.
filenames_list <- as.list(filenames)

# Create a function to download the files by passing the URL and filename list.
downloadcsv <- function (mainurl,filename) {
   filedetails <- str_c(mainurl,filename)
   download.file(filedetails,filename)
}

# Now apply the l_ply function and save the files into the current R working directory.
l_ply(filenames,downloadcsv,mainurl = "http://www.geos.ed.ac.uk/~weather/jcmb_ws/")

Dosya İndirmeyi Doğrulayın

Yukarıdaki kodu çalıştırdıktan sonra, aşağıdaki dosyaları geçerli R çalışma dizininde bulabilirsiniz.

"JCMB_2015.csv" "JCMB_2015_Apr.csv" "JCMB_2015_Feb.csv" "JCMB_2015_Jan.csv"
   "JCMB_2015_Mar.csv"