Ошибка в type.convert при чтении данных из CSV - PullRequest
0 голосов
/ 21 октября 2019

Я работаю над баскетбольным проектом. Я изо всех сил пытаюсь открыть свои данные в R: https://www.basketball -reference.com / leagues / NBA_2019_totals.html

Я импортировал данные в Excel, а затем сохранил их как CSV (длямакинтош). Когда я импортирую данные в RI, появляется сообщение об ошибке:

"Error in type.convert.default(data[[i]], as.is = as.is[i], dec = dec, : invalid multibyte string at '<e7>lex<20>Abrines' "

1 Ответ

0 голосов
/ 21 октября 2019

Следующее похоже на работу. Функция readHTMLTable выдает предупреждения из-за присутствия нулевых символов в столбце Player.

library(XML)

uri <- "https://www.basketball-reference.com/leagues/NBA_2019_totals.html"
data <- readHTMLTable(readLines(uri), which = 1, header = TRUE)

i <- grep("Player", data$Player, ignore.case = TRUE)
data <- data[-i, ]
cols <- c(1, 4, 6:ncol(data))
data[cols] <- lapply(data[cols], function(x) as.numeric(as.character(x)))

Проверьте, есть ли значения NA. Это необходимо, потому что таблица в ссылке время от времени перезапускает заголовки, а строки символов смешиваются с числовыми записями. grep выше предназначено для выявления таких случаев, но, возможно, есть и другие.

sapply(data, function(x) sum(is.na(x)))

Нет, все в порядке. Поэтому запишите набор данных в виде файла CSV.

write.csv(data, "nba.csv")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...