Загрузите файл .csv с github, используя запрос HTTR GET - PullRequest
0 голосов
/ 17 марта 2020

Я пытаюсь создать автоматическое c извлечение R с использованием функции GET из пакета HTTR для CSV-файл, расположенный на github.

Вот таблица, которую я пытаюсь загрузить.

https://github.com/CSSEGISandData/COVID-19/blob/master/csse_covid_19_data/csse_covid_19_time_series/time_series_19-covid-Confirmed.csv

Я могу установить соединение с файл, используя следующий запрос GET:

library(httr)

x <- httr::GET("https://github.com/CSSEGISandData/COVID-19/blob/master/csse_covid_19_data/csse_covid_19_time_series/time_series_19-covid-Confirmed.csv")

Однако я не уверен, как затем преобразовать это в кадр данных, аналогичный таблице на github.

Любая помощь будет высоко ценится.

1 Ответ

0 голосов
/ 17 марта 2020

Я новичок в R, но вот мое решение.

Вам необходимо использовать необработанную версию csv-файла из github (raw.githubusercontent.com)!

library(httr)

x <- httr::GET("https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_time_series/time_series_19-covid-Confirmed.csv")

# Save to file
bin <- content(x, "raw")
writeBin(bin, "data.csv")

# Read as csv
dat = read.csv("data.csv", header = TRUE, dec = ",")

colnames(dat) = gsub("X", "", colnames(dat))

# Group by country name (to sum regions)
# Skip the four first columns containing metadata 
countries = aggregate(dat[, 5:ncol(dat)], by=list(Country.Region=dat$Country.Region), FUN=sum)

# Here is the table of the most recent total confirmed cases
countries_total = countries[, c(1, ncol(countries))]

График вывода

Как я получил это на работу:

...