API를 이용한 베팅 분석

7243 단어 RRStudio

API를 이용한 베팅 분석



이번 연구의 동기는 지인에게 Pinnacle Sports의 데이터 분석을 요청받은 것입니다.
공식적으로 API가 제공되고 있으므로, 그것을 이용해 데이터의 취득과 분석을 실시합니다.

R 패키지



아마도 가장 쉬운 방법은 Pinnacle의 R 패키지를 사용하는 것입니다.

패키지 이름: Pinnacle.API
htps : // 기주 b. 코 m/마 r코 bぅ메/핀아 cぇ. 아피 #레아 D메

도입 절차



먼저 RStudio로 패키지를 설치합니다.



RStudio에서 다음 코드를 작성하면 API를 사용할 수 있습니다.
library(pinnacle.API)

username <- "ユーザー名"
userpass <- "パスワード"

SetCredentials(username, userpass)
AcceptTermsAndConditions(accepted = TRUE)

유저명, 패스워드에는 각각 Pinnacle Sports로 사용하고 있는 username, userpass를 각각 입력합니다.

데이터 얻기



실제로 데이터를 가져옵니다.
currentDate <- as.POSIXlt(Sys.Date(), tz = "UTC")

dfSum <- NULL

for (i in 1:2) {
  df <- GetBetsList(fromDate = currentDate - i * 30 * 24 * 60 * 60,
                    toDate = currentDate - (i-1) * 30 * 24 * 60 * 60)
  dfSum <- rbind(df, dfSum)
}

dfSum <- dfSum[order(dfSum$bets.betId),]

데이터를 한 번에 검색할 수 있는 날짜 및 시간 범위가 상한 30일로 제한됩니다.
루프로 구분하여 30일마다의 데이터를 취득해, rbind 로 세로에 연결하고 있습니다.
이번은 4월 1일부터 2개월간의 데이터를 취득하는 목적이므로 루프는 2회밖에 돌리고 있지 않습니다.
과거 1년분 등 취득하고 싶으면 루프의 횟수를 늘리면 됩니다.
마지막으로 order를 사용하여 날짜와 시간 순서 (정확하게 betId 순서)로 정렬합니다.

데이터 저장



저장할 디렉토리와 파일 이름을 지정하여 데이터 프레임을 CSV에 저장합니다.
file <- "pin.csv"
write.csv(dfSum, file)

데이터 분석



데이터를 얻을 수 있었으므로 R이나 python에서 원하는 언어로 다양한 분석이 가능합니다.
R로 그대로 히스토그램을 그려 보겠습니다.
score <- c(dfSum$bets.ftTeam1Score, dfSum$bets.ftTeam2Score)
hist(score, breaks = seq(-0.5,15.5,1), col="green")



요약



이번에는 API를 사용하여 R로 데이터 분석을 수행하는 방법을 소개했습니다.
의견 등 있으면 코멘트 부탁드립니다.

좋은 웹페이지 즐겨찾기