Импортируйте XLS, readxl / gdata внесите в DF с NA - PullRequest
2 голосов
/ 02 апреля 2019

Я пытаюсь перенести этот файл .xls в R: https://www.reit.com/sites/default/files/returns/MonthlyHistoricalReturns.xls

Я пытался ввести его прямо с URL-адреса на компьютере с Windows. Я уже сталкивался с проблемами https и http, а также с проблемой perl для Windows. Чтобы обойти это, я попытался запустить Ubuntu, а также сначала загрузить файл.

Мои последние две попытки с readxl и gdata приводят к созданию фрейма данных, хотя ни у одной из них нет данных. Там нет сообщений об ошибках.

NAREIT <- readxl::read_xls("~/Downloads/MonthlyHistoricalReturns.xls")

Это дает 38 наблюдений за одной переменной, все NA.

NAREIT <- gdata::read.xls("~/Downloads/MonthlyHistoricalReturns.xls")

И это дает 0 наблюдений за 1 переменной. «В таблице нет данных» - это текст, записанный внутри единственной ячейки.

Файл явно уродливый, с несколькими ненужными строками заголовков, объединенными ячейками, замороженными представлениями и т. Д. Я пытался указать диапазоны, столбцы, строки, пропускаемые строки, имена столбцов и т. Д. - все, что я мог придумать из документации readxl и gdata.

Я могу просто сократить необходимый диапазон, сохранить как CSV и работать с ним. Но, поскольку мне, вероятно, придется регулярно возвращаться к этому, я ищу «правильный» способ открыть этот файл. Любые мысли очень ценятся.

1 Ответ

2 голосов
/ 02 апреля 2019

Похоже, что есть несколько строк заголовка, поэтому вам нужно выяснить, что вы хотели бы использовать в качестве заголовка, или проконсультироваться с несколькими страницами о переполнении стека, которые покажут вам, как работать с 2-строчными заголовками.

В любом случае, я могу импортировать его вот так, и, кажется, все в порядке

library(readxl)
MonthlyHistoricalReturns <- read_excel("MonthlyHistoricalReturns.xls", sheet = "Index Data", skip = 7)

Я перешел к строке 7, чтобы начать там свой заголовок

...