FIFA Rankings (woman)

https://sites.google.com/site/worldbankfifa/tools/script_fifa

にFIFAランキングデータをネットから入手する方法が書かれていた. ちょっと古い記事で, PerlをつかったScrapingが書かれていたが, Rのライブラリ RCurl を使えば一貫して使える. 女子は四半期データが男子はほぼ月次データが入手できる. 女子については次のようにすればよい. ただこれで入手できるのは2012年第2四半期までのようである. 男子についても同様におこなえばよい. ただこれも2012年8月までしか入手できない. そこから先はどうすればいいのか今後の課題です.

rm(list = ls())
gc()
library(RCurl)
library(XML)
df <- NULL
for (index in 501:538) {
    data <- NULL
    for (page in 1:3) {
        url <- paste("http://www.fifa.com/worldfootball/ranking/rank=", index, 
            "/confederation=0/page=", page, "/_index.html", sep = "")
        myData <- getURL(url, .encoding = "UTF-8")
        y <- htmlParse(myData, asText = TRUE)
        x <- readHTMLTable(y, which = 1)
        data <- rbind(data, x)
    }

    name <- gsub("Pts", "", colnames(data))[3]
    name <- unlist(strsplit(name, " "))
    # filename <- paste('woman',name[2],name[1],sep='') filename <-
    # paste(filename,'csv',sep='.')

    data <- data[, 1:3]
    colnames(data) <- c("Ranking", "Team", "Points")
    data$month <- name[1]
    data$quarterly <- ifelse(((name[1] == "Jan") || (name[1] == "Feb") || (name[1] == 
        "Mar")), "Q1", data$quarterly <- ifelse(((name[1] == "Apr") || (name[1] == 
        "May") || (name[1] == "Jun")), "Q2", data$quarterly <- ifelse(((name[1] == 
        "Jul") || (name[1] == "Aug") || (name[1] == "Sep")), "Q3", "Q4")))
    data$year <- paste("20", name[2], sep = "")
    df <- rbind(df, data)
}
write.csv(df, "woman.csv", row.names = FALSE, fileEncoding = "UTF-8")
投稿者: kenjimyzk カテゴリー: computer タグ: ,

FIFA Rankings (woman)」への1件のコメント

  1. ピンバック: サカログよりFIFAランキングポイントデータ入手 | miyazakikenji

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中