Попытка загрузить файл CSV для nfl_elo;аргумент "dat" отсутствует, по умолчанию нет - PullRequest
0 голосов
/ 01 октября 2018

Я не могу понять, что он просит, когда он говорит dat.Я пытался получить данные с сайта проекта [538] для загрузки.Я не смог загрузить его прямо с сайта, поэтому я загрузил его как

nfl_eloRAW <- read_csv("https://projects.fivethirtyeight.com/nfl-api/nfl_elo.csv")

, а затем применил к рекомендованному формату загрузки в пакете FiveThirtyEight.

> nfl_elo <- read_csv((nfl_eloRAW), clean_names(), mutate( team1 = 
as.factor(team1), team2 = as.factor(team2), neutral = ifelse(neutral == 1, 
TRUE, FALSE)), is.data.frame(dat))
Error in is.data.frame(dat) : argument "dat" is missing, with no default

Когда я делаю это с фреймом данных, непосредственно записанным как:

library(tidyverse) library(janitor) 
nfl_elo <- read_csv("https://projects.fivethirtyeight.com/nfl-api/nfl_elo.csv") 
clean_names() mutate( team1 = as.factor(team1), team2 = as.factor(team2), 
neutral = ifelse(neutral == 1, TRUE, FALSE))

, я получаю ошибку:

неожиданный элемент в nfl_elo: "clean_names ()"

У меня включен режим Tidyverse, и он должен работать.Я все еще новичок, так что любой совет отличный.Я полагаю, что ошибка в dat может означать данные, данные были загружены в моей глобальной среде.Я мог бы загрузить файл в Excel и импортировать набор данных и, возможно, избежать некоторых из этих проблем при попытке форматирования, но мне нравится, что если он загружается из прямого патча на веб-сайте, он будет обновляться после каждой игры.

1 Ответ

0 голосов
/ 01 октября 2018

Привет, добро пожаловать в stackoverflow, вам просто не хватает оператора %>% pipe, объединяющего ваши функции.Кроме того, я бы посоветовал вам сделать отступ для вашего кода, чтобы он был более читабельным.

Я запустил приведенный ниже код, чтобы получить следующий вывод

library(tidyverse)
library(janitor) 

nfl_elo <- read_csv("https://projects.fivethirtyeight.com/nfl-api/nfl_elo.csv") %>% 
  clean_names() %>%
  mutate(
    team1 = as.factor(team1), 
    team2 = as.factor(team2),
    neutral = ifelse(neutral == 1, TRUE, FALSE)
  )

nfl_elo

# A tibble: 16,274 x 14
         date season neutral playoff  team1  team2 elo1_pre elo2_pre elo_prob1 elo_prob2 elo1_post elo2_post score1
       <date>  <int>   <lgl>   <chr> <fctr> <fctr>    <dbl>    <dbl>     <dbl>     <dbl>     <dbl>     <dbl>  <int>
 1 1920-09-26   1920   FALSE    <NA>    RII    STP 1503.947 1300.000 0.8246512 0.1753488  1516.108  1287.838     48
 2 1920-10-03   1920   FALSE    <NA>    BFF    WBU 1478.004 1300.000 0.8020003 0.1979997  1489.757  1288.247     32
 3 1920-10-03   1920   FALSE    <NA>    CBD    PTQ 1504.688 1300.000 0.8252672 0.1747328  1516.803  1287.885     48
 4 1920-10-03   1920   FALSE    <NA>    CHI    MUT 1368.333 1300.000 0.6829856 0.3170144  1386.533  1281.800     20
 5 1920-10-03   1920   FALSE    <NA>    RII    MUN 1516.108 1478.004 0.6441711 0.3558289  1542.135  1451.977     45
 6 1920-10-03   1920   FALSE    <NA>    DAY    COL 1493.002 1504.908 0.5758191 0.4241809  1515.434  1482.475     14
 7 1920-10-03   1920   FALSE    <NA>    RCH    ABU 1503.420 1300.000 0.8242121 0.1757879  1510.934  1292.486     10
 8 1920-10-03   1920   FALSE    <NA>    AKR    WHE 1503.420 1300.000 0.8242121 0.1757879  1515.278  1288.142     43
 9 1920-10-10   1920   FALSE    <NA>    CBD    TLM 1516.803 1300.000 0.8350967 0.1649033  1527.799  1289.004     42
10 1920-10-10   1920   FALSE    <NA>    CHI    KEW 1386.533 1300.000 0.7052228 0.2947772  1402.774  1283.760     25
# ... with 16,264 more rows, and 1 more variables: score2 <int>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...