Блог Samoedd > Научный Софт > Как загрузить свои данные в среду R
Как загрузить свои данные в среду R
Начинающие пользователи часто сталкиваются с проблемой загрузки своих данных в среду R: данные просто не загружаются или неправильно отображаются, возникают разного рода ошибки. Особенно эта проблема актуальна для тех, кто хранит свои данные в таблицах Excel и пытается именно их загрузить в R. Проблемы загрузки данных в среду R не всегда подробно рассматриваются в учебниках или на курсах, поэтому я решил написать эту статью и надеюсь, она облегчит жизнь тем, кто только заинтересовался R!
Правильная структура таблицы - залог успеха!
Большинство студентов, аналитиков и ученых работают с таблицами данных, поэтому именно их мы и загрузим в среду R. В качестве примера я создал таблицу в Excel с физическими данными студентов одного из военных ВУЗов (все данные вымышлены, любое совпадение имен и событий с реальными являются случайностью). В ней я заведомо нарушил все каноны построения таблиц, потому что неправильная структура таблицы является главным препятствием для загрузки данных не только в R, но и в другие статистические программы. Скачать таблицу можно по этой ссылке.
Как видно на рисунке ниже наша «таблица данных» имеет ряд структурных ошибок.

Во-первых, мы фактически имеем две таблицы в одной. Названия столбцов в этих таблицах кажутся разными, но на самом деле они просто написаны на разных языках. Так что мы можем смело объединить данные в одну таблицу. Я рекомендую использовать английский, так как это упростит работу в R. Теперь наша таблица стала единой.
Во-вторых, в некоторых столбцах мы имеем неоднородность данных. Например, в «Weight» и «Blood group» часть данных отображена числами, а часть словами. Всегда приводите данные одного столбца к одному формату. То же самое касается и «Rhesus factor». Также убедитесь, что в Excel листе нет заполненных ячеек , находящихся за пределами созданной таблицы. В итоге, результат должен получиться такой же, как на рисунке ниже.
Загрузка данных в среду R напрямую из Excel таблиц
Итак, теперь наша таблица имеет правильную структуру. Для загрузки файлов в форматах программы Excel (.xsl или .xlsx) существует R-пакет "xlsx", который позволяет загружать их без особых проблем.
Сначала загружаем пакет "xlsx" в среду R:
> install.packages("xlsx", dep = T)
Подключаем этот пакет при помощи команды:
> library("xlsx")
Потом прописываем путь и имя файла, указываем номер листа, в котором находится таблица:
> имя таблицы в R <- read.xlsx("путь к файлу/имя файла.xlsx",
sheetIndex = "номер листа")
В нашем случае имя файла "voenvuz.xlsx", а имя таблицы данных в среде R - "voenvuz1":
> voenvuz <- read.xlsx("D:/Samoedd.com/Статьи/05 Загрузка данных в R/Students2.xlsx", sheetIndex = 1)
Проверим, все ли нормально со структурой таблицы, вызвав имя таблицы "voenvuz1" в командной строке:

Все готово, наша таблица загружена корректно в среду R. Но прежде чем перейти к анализу загруженных данных, следует также освоить другой, более популярный среди опытных пользователей R метод загрузки данных — импортирование .txt и .csv файлов. В своей работе я использую именно его!
Классический вариант: импорт таблиц форматов .txt или .csv в среду R
Есть по крайней мере три причины, почему большинство пользователей R предпочитают пользоваться именно этим вариантом. Во-первых, не нужно подключать в R никаких дополнительных пакетов. Во-вторых, множество «сырых» данных сохраняется именно в форматах .txt и .csv. В третьих, эти форматы меньше весят в сравнении с тяжелыми .xls и .xlsx, и в них нет никаких ограничений по количеству строк или столбцов. Другими словами, они универсальны.
Создадим файлы voenvuz.txt и voenvuz.csv прямо в программе Excel. Для этого проделаем следующее:
- Нажимаем на вкладку «Файл» в левом верхнем углу;
- Выбираем «Экспорт» и находим опцию «Изменить тип файла»;
- Кликаем на нее и видим перед собой список различных форматов;
- Выбираем .txt (разделитель — знак табуляцией ‘tab’) или .csv (разделитель — запятая);
- Прописываем расположение и имя файла.
Теперь необходимо лишь импортировать полученные файлы в среду R. Для этого воспользуемся командами:
# для .csv:
> voenvuz2 <- read.csv("D:/Samoedd.com/Статьи/05 Загрузка данных в R/voenvuz.csv", sep = ";")
# для .txt:
> voenvuz3 <- read.table("D:/Samoedd.com/Статьи/05 Загрузка данных в R/voenvuz.txt", sep = "\t")
Несмотря на то, что мы загружали данные из разных форматов (.xlsx, .csv, .txt), результат должен получиться одним и тем же. Именно поэтому в среде R у нас появилось три абсолютно одинаковых таблицы под именами "voenvuz1", "voenvuz2", "voenvuz3".
Полезная информация, небольшой трюк и заключение...
Чтобы быстро и эффективно загружать свои данные в среду R важно понимать, что такое «рабочая директория». Говоря простыми словами — это папка (директория), где расположен исполняемый файл программы. Для того, чтобы узнать рабочую папку R, следует набрать команду: > getwd()
Файлы, расположенные в этой папке, не нуждаются в указании «пути к файлу» при загрузке в среду R, что существенно экономит время, и уменьшает количество букв в коде. Именно поэтому важно не только знать, но и уметь изменять расположение рабочей папки. Измените расположение рабочей директории R на ту папку, в которой Вы разместили файлы voenvuz.xlsx, voenvuz.csv, voenvuz.txt.
> setwd("D:/Samoedd.com/Статьи/05 Загрузка данных в R")
Теперь Вы можете загрузить любую из таблиц, используя гораздо более короткий код, например:
> voenvuz4 <- read.table("voenvuz.txt", sep = "\t")
Трюк с ярлыком R
Есть способ, при котором не нужно прописывать путь рабочей директории в R консоли, он будет создан автоматически. Для этого надо кликнуть по ярлыку программы R правой кнопкой и выбрать «Свойства». Во вкладке ярлык Вы увидите окошко «Рабочая папка». Удалите все, что там написано, чтобы оно было пустым, и нажмите «Применить».
Теперь просто скопируйте ярлык и вставьте его туда, где хранятся Ваши таблицы данных. Запустите R через этот ярлык. Все, Вы уже автоматически установили рабочую папку там, куда вставили ярлык. Для проверки можете воспользоваться командой dir(), которая выведет в консоль список файлов, находящихся в рабочей папке.
И напоследок, пара советов...
I. Если по каким-то причинам, таблица загрузилась в среду R неправильно, обратите внимание на аргументы функции read.table(). Возможно, стоит вручную прописать разделитель столбцов (sep = «») и десятичный знак (dec = «»). Аргумент header = TRUE, говорит о том, что у Вас в таблице присутствует заголовок для столбцов. Если его нет, замените на header = FALSE. Больше справочной информации об аргументах вы найдете, написав в консоли ?read.table
В качестве примера, я прописал некоторые аргументы для импорта нашей «voenvuz.txt» таблицы:
> voenvuz5 <- read.table("voenvuz.txt", header = TRUE, sep = "\t", dec = ".")
II. Если Ваш путь к таблице данных прописан на кириллице, то при вводе кода в консоль, убедитесь, что у Вас стоит английская раскладка. В противном случае, Вы увидите ошибку, проиллюстрированную ниже.

Если у Вас возникли вопросы или проблемы с загрузкой Ваших данных, пишите в комментариях к этой статье. Я обязательно отвечу и постараюсь Вам помочь. Спасибо за внимание!
Комментарии: 70
Здравствуйте! При подключении пакета «xlsx» выдает такую ошибку:
Ошибка: package or namespace load failed for ‘xlsx’ in get(Info[i, 1], envir = env):
не могу открыть файл ‘C:/Users/Айгерим/Documents/R/win-library/4.0/rJava/R/rJava.rdb’: No such file or directory
Вдобавок: Предупреждение:
пакет ‘xlsx’ был собран под R версии 4.0.3
Скажите,пожалуйста,каким образом можно это исправить?
Здравствуйте! Прочитала все комментарии и все равно не могу понять, что не так. Пытаюсь загрузить небольшую таблицу из двух столбцов в формате csv. В итоге вот что выходит:
read.table(file(«data/D2015.csv», encoding = «UTF-8″), header = T)
Ошибка в make.names(col.names, unique = TRUE) :
неправильная многобайтная строка в »
Вдобавок: Предупреждения:
1: В read.table(file(«data/D2015.csv», encoding = «UTF-8»), header = T) :
неправильный ввод найден во входном соединении ‘data/D2015.csv’
2: В read.table(file(«data/D2015.csv», encoding = «UTF-8»), header = T) :
incomplete final line found by readTableHeader on ‘data/D2015.csv’
Что это значит?
Здравствуйте! Боюсь, что без работы с Вашей таблицей тут не обойтись. Пришлите ее мне на sergey@samoedd.com, я к завтрашнему вечеру отвечу.
Пожалуйста, если вас не затруднит, посмотрите, я до сих пор не разобралась :(
Здравствуйте, Вика!
Вчера вечером так и не смог понять в чем там загвоздка. Но теперь понял, как решить Вашу проблему.
1) что-то не так с кодировкой csv файла, поэтому откройте файл, скопируйте данные оттуда и сохраните в новом Excel файле, нажмите кнопку «Сохранить как» и выберете формат «UTF-16 unicode text (.txt)»
2) откройте новый файл в R при помощи этой функции:
read.csv(«Book1.txt», header = T, fileEncoding=»UTF-16LE», sep = «\t»)
# переделайте кавычки только, тут в комментариях на сайте они превращаются во что-то непонятное:-)
А что если у меня нет Excel, только Open, там нет такого формата сохранения(
Тогда сохранить как .csv и запустить эту команду:
read.csv("D2015.csv", header = T, fileEncoding="UTF-8", sep = ",")
У меня LibreOffice стоит (конкурент OpenOffice), все работает.
> read.csv(«data/D2015.csv», header = T, fileEncoding=»UTF-8″, sep = «,»)
Ошибка в read.table(file = file, header = header, sep = sep, quote = quote, :
пустое начало файла
Вдобавок: Предупреждения:
1: В read.table(file = file, header = header, sep = sep, quote = quote, :
неправильный ввод найден во входном соединении ‘data/D2015.csv’
2: В read.table(file = file, header = header, sep = sep, quote = quote, :
line 1 appears to contain embedded nulls
3: В read.table(file = file, header = header, sep = sep, quote = quote, :
incomplete final line found by readTableHeader on ‘data/D2015.csv’
Возможно у Вас другой разделитель или ещё что-то: модифицируйте код, проверьте структуру новой таблицы. У меня с Вашей таблицей работали и метод с Excel, и метод с Libre office.
Фух, удалось открыть, спасибо большое за Вашу помощь!
Спасибо за полезную информацию.
Все делаю, согласно вашим рекомендациям.
НО столкнулся с проблемой- не загружается функция «read.xlsx». Выходит информация об ошшибке
> read.xlsx (nta2010_Austria_wide_Euro.xlsx)
Ошибка в read.xlsx(nta2010_Austria_wide_Euro.xlsx) :
не могу найти функцию «read.xlsx»
> library («xlsx»)
Ошибка: package or namespace load failed for ‘xlsx’ in get(Info[i, 1], envir = env):
не могу открыть файл ‘C:/Users/den-m/OneDrive/Документы/R/win-library/4.0/rJava/R/rJava.rdb’: No such file or directory
>
Проблема с Java, установленной на Вашем компьютере. В комментариях к этой статье Вы можете найти решение данной проблемы, я отвечал раннее на подобные вопросы. Если же нет, то воспользуйтесь другим R пакетом, а лучше конвертируйте .xlsx в .csv или .txt и загрузите используя базовые R функции read.csv и read.table, соответственно.
Добрый день!
Подскажите пожалуйста, пытаюсь присвоить значения документа в nodes, выходит такая ошибка:
> nodes<-read.csv("C:\Users\stard\Desktop\Системная инженерия\elements.csv")
Ошибка: '\x' использовано без шестнадцатиричных цифр в строке начинающейся с ""C:\U"
Файл находится не в рабочей директории программы.
Здравствуйте! Думаю дело в использовании обратного слэша. Замените «\» на «/» и скорее всего все заработает.
Господи, как стыдно… Очень глупая ошибка) Спасибо большое!!!!
здравствуйте при вводе library(xlsx)
выдает Ошибка: package or namespace load failed for ‘xlsx’:
.onLoad не удалось в loadNamespace() для ‘rJava’, подробности:
вызов: fun(libname, pkgname)
ошибка: JAVA_HOME cannot be determined from the Registry
>
Есть ли у Вас не установлена Java на компьютере, то загрузите ее по ссылке:
https://java.com/ru/download/
Затем, установите JDK (Java Development Kit) на Ваш компьютер, не изменяя стандартных параметров установки. И теперь снова попробуйте установить пакет xlsx.
Если пакет все равно не будет работать, попробуйте поработать с альтернативным вариантом: R пакетом «gdata» (подробнее читайте в комментарий под этой статьей от Марта 29, 2019 в 03:14)
Здравствуйте!
Благодаря Вашему материалу научился грузить в R файлы из Excel-а.
Но. Возник затык с загрузкой временных рядов.
Как екселевскую таблицу загрузить в R, чтобы он понял, что это временно ряд (файл содержит две колонки — 1-ая колонка дата
(формата 01.01.2010), 2-ая — цифра, соответствующая этой дате).
Пробовал менять формат даты на 20100101, 2010-01-01, 2010:01 — бесполезно.
Подозреваю, что нужно чем то преобразовать мой ряд во временной. А чем не пойму.
Гружу просто:
>library(readxl)
>y <- read_excel("ОРТ.xlsx")
R не считает загруженные данные временным рядом — думает, что это просто две переменные. Поэтому следующие процедуры невозможны ибо ошибка — 'x' argument is not a time series
Прошу хелпа.
Здравствуйте, Алекс!
Спасибо за интересный вопрос. Пришлите мне Ваш файл (например через Яндекс диск), я сегодня вечером посмотрю и решу Вашу проблему.
Размести файл
https://yadi.sk/i/vNKL5ItJMuhA1Q
он самый что ни на есть обыкновенный.
Жду Вашего решения.
Так как R пакет «readxl» мне не очень понравился, я решил действовать по старинке: сначала открыл в Excel и сохранил файл как txt. Потом загрузил файл в R, отобразил первые шесть строк и проверил структуру таблицы, сменил формат первой колонки на дату и построил базовый график, чтобы проверить все ли работает:
a < - read.table("TS.txt", head = T)
head(a)
str(a)
a$ORT < - as.Date(a$ORT, "%d/%m/%Y")
plot(a$ORT, a$IPC)
P.S. всегда лучше конвертируйте xlsx в txt или csv. Тогда никаких проблем с загрузкой точно не будет.
Спасибо большое, способ работает. Но.
Это мой косяк. Забыл сказать, что мне нужно именно из Excel-а подгружать сотни временных рядов, чтоб потом их обрабатывать (эконометрика). С конвертацией в txt или в csv я просто зароюсь.
Т.е. в идеале — готовлю эксель файл, потом в R прописываю его имя, жму на run, начинается обработка с последующей выгрузкой в файл (на этом этапе у меня выгружается пока в формате csv, но это не так страшно). Сам искал разные пути/пакеты, ничего путного не нашел…
Понял. Тогда сначала установи пакет «gdata»:
install.packages("gdata")
Потом вот этот скрипт, вуаля:
library(gdata)
a < - read.xls("TS.xlsx")
a$ORT < - as.Date(a$ORT, "%Y-%m-%d")
plot(a$ORT, a$IPC)
str(a)
head(a)
tail(a)
При попытке запустить команду
a<-read.xls("TS.xlsx")
Появляется сообщение
Error in findPerl(verbose = verbose) :
perl executable not found. Use perl= argument to specify the correct path.
Error in file.exists(tfn) : invalid 'file' argument
Почитал про это дело. Как я понял. Надо еще перл подтягивать.
Пока обхожусь таким способом
Гружу данные из буфера обмена (только цифры без дат и без заголовка)
y<-read.table("clipboard")
Потом прикручиваю к цифрам даты, начиная с нужной даты и указываю их частотность.
z<-ts(y,frequency = 12,start=c(2010,1))
Тут главное не забыть сменить дату при изменении start даты у какого либо временного ряда (человеческий фактор). Способ конечно работает, но у меня есть ощущение, что есть варианты поизящнее.
Но в любом случае спасибо за участие.
Error in lm.fit(x, y, offset = offset, singular.ok = singular.ok, …) :
NA/NaN/Inf в ‘x’
При попытки построить регрессионную модель выходит ошибка связанная с данными, но никак не могу понять что это
Вместо COL вставьте имя своего столбца и запустите в R эти строчки.
COL[which(is.nan(COL))] = NA
COL[which(COL==Inf)] = NA
Здравствуйте! Прошу вашей помощи, не могу корректно импортировать таблицу в формате сvs, не могу отредактировать параметр sep=»» на sep=»,», что бы данные по столбикам не сливались(если я правильно понял проблему).В read.table это параметр поменять не получается.Вот мой код:#install.packages(«dplyr»)
#install.packages(«ggplot2»)
library(dplyr)
library(ggplot2)
flats.csv <- read.csv("flats.csv", stringsAsFactors=FALSE, encoding="UTF-8", dec= ".", sep=",", header = TRUE)
read.table
str(flats)
Здравствуйте, Антон!
Скиньте пожалуйста ссылку на Ваш файл данных. Сегодня вечером решим Вашу проблему.
спасибо,решил проблему.при пересохранение файла сsv, в файл добавились дополнительные символы,которые мешали разделению. скачал заново файл и импортировал не пересохраняя, и все вышло
Здравствуйте, почему R все названия колонок и значения строк выдает вместе в одной колонке, хотя их три?
Здравствуйте, Денис! Скорее всего ошибка в выборе разделителя столбцов (проверьте значение аргумента sep). Если нет, проверьте расширение файла, который Вы пытаетесь загрузить: если это .csv файл, используйте функцию read.csv(); если .txt — read.table(); excel — read.xlsx().
Если мои рекомендации не помогают, оставьте здесь ссылку на Ваш файл и код, который Вы используете для его загрузки.
Спасибо за ответ! Для загрузки использую код x <- read.csv("data1.csv", header = TRUE, sep=""). Загружаю это файл https://yadi.sk/i/KWqB0CAauTrDoQ
Проблема в некорректном значении аргумента sep. Самый простой способ узнать разделитель столбцов — открыть файл в текстовом редакторе (например Блокнот, но если придется кодить на регулярной основе, присмотритесь к более продвинутому редактору — NotePad++).
В любом случае, открыв этот файл в текстовом редакторе, Вы увидите, что между значениями в строках стоит точка с запятой. Ту же точку с запятой Вы видите, когда некорректно загружаете файл в консоли R. Поэтому решение простое — вставьте в аргумент sep «;» и все заработает:
x < - read.csv("data1.csv", header = TRUE, sep=";")
Если возникнут другие сложности с R пишите в комментариях к соответствующим статьям. Я буду рад Вам помочь.
Здравствуйте, спасибо за статью! Скажите, пожалуйста, как быть.
У меня таблица csv с большим объемом данных, причем в некоторых ячейках есть фразы, естественно между словами фразы есть пробел. Так вот R импортирует эти слова из одной ячейки в разные ячейки, то есть, думает, что это относится к разным столбцам. Как быть, если данные не только цифровые и описаны не только одним словом в ячейке?
Здравствуйте, Татьяна!
Верно ли я понимаю, что разделителем между столбцами также является пробел? Если да, то смело откройте таблицу в Excel и экспортируйте в csv, где разделитель будет запятой., либо в txt с разделителем (точка с запятой), чтобы избежать подобной проблемы с возможными запятыми внутри ячеек таблицы.
Если проблема не решилась, свяжитесь со мной здесь, я обязательно отвечу.
Ошибка в read.table(file = file, header = header, sep = sep, quote = quote, :
больше колонок, чем имен для них
Что делать?
Напишите какую команду (код) Вы отправляли в R, а также расширение загружаемой таблицы (txt, csv или xls)?
csv
LoanStats_2016Q1<-read.csv("D:/Диплом/Данные/LoanStats_2016Q1.csv",sep=",")
эту строку вбивала
Попробуйте вот эти три варианта:
read.csv(«D:/Диплом/Данные/LoanStats_2016Q1.csv», row.names=NULL)
read.csv2(«D:/Диплом/Данные/LoanStats_2016Q1.csv», row.names=NULL)
read.csv(«D:/Диплом/Данные/LoanStats_2016Q1.csv», header=F, row.names=NULL)
Если ни один из вариантов не сработает, пришлите мне на email Ваш файл, я устраню проблему.
Пишет, что неожиданный ввод
Странно, пишлите мне на почту свой файл, без него никуда видимо:-)
Здравствуйте! У меня такая ошибка:
Error in open.xlsx(«C:/Users/user/voenvuz.xlsx») :
could not find function «open.xlsx»
Используйте функцию read.xlsx и все заработает.
Ошибка в команде > library(«xlsx») не грузит пакет rjava
> install.packages(«xlsx», dep = T)
— Пожалуйста, выберите зеркало CRAN для использования в этой сессии —
пробую URL ‘https://cloud.r-project.org/bin/windows/contrib/3.4/xlsx_0.5.7.zip’
Content type ‘application/zip’ length 401236 bytes (391 KB)
downloaded 391 KB
пакет ‘xlsx’ успешно распакован, MD5-суммы проверены
Скачанные бинарные пакеты находятся в
C:\Users\FEED-PRO\AppData\Local\Temp\RtmpYxTZ9o\downloaded_packages
> library(«xlsx»)
Загрузка требуемого пакета: rJava
Error: package or namespace load failed for ‘rJava’:
.onLoad не удалось в loadNamespace() для ‘rJava’, подробности:
вызов: fun(libname, pkgname)
ошибка: JAVA_HOME cannot be determined from the Registry
Ошибка: пакет ‘rJava’ нельзя загрузить
> install.packages(«rJava», dep = T)
пробую URL ‘https://cloud.r-project.org/bin/windows/contrib/3.4/rJava_0.9-9.zip’
Content type ‘application/zip’ length 720033 bytes (703 KB)
downloaded 703 KB
пакет ‘rJava’ успешно распакован, MD5-суммы проверены
Скачанные бинарные пакеты находятся в
C:\Users\FEED-PRO\AppData\Local\Temp\RtmpYxTZ9o\downloaded_packages
> library(«xlsx»)
Загрузка требуемого пакета: rJava
Error: package or namespace load failed for ‘rJava’:
.onLoad не удалось в loadNamespace() для ‘rJava’, подробности:
вызов: fun(libname, pkgname)
ошибка: JAVA_HOME cannot be determined from the Registry
Ошибка: пакет ‘rJava’ нельзя загрузить
Здравствуйте, Надежда!
R не может найти путь к Java. Вы установили Java на компьютер?
Если работаете с macOS, то Терминал и введите команду:
sudo ln -s $(/usr/libexec/java_home)/jre/lib/server/libjvm.dylib /usr/local/lib
Джаву установила с прогрузкой библиотеки проблема решилась но при попытке загрузить таблицу в р среду нечего непроисходит
Мне нужно больше информации, чтобы помочь Вам. Напишите что у Вас за ОС, 32 или 64 бит, Rgui или RStudio или Терминал, версия R и какой код вводите в консоль. Желательно еще ссылку на скрин.
voenvuz<-read.xlsx("C:/Users/Дима/Documents/data/voenvus.xlsx",sheetlndex=1)
Ошибка в read.xlsx("C:/Users/Дима/Documents/data/voenvus.xlsx", sheetlndex = 1) :
Please provide a sheet name OR a sheet index.
Спасибо, попробую так. Это удобней. Правда я по другому научилась загружать в R. Сохраняю как блокнот и потом загружаю.
Здравствуйте! У меня возникли проблемы на этапе установки пакета. Подскажите, пожалуйста, что делать в этом случае:
install.packages(«xlsx»)
Warning in install.packages :
‘lib = «C:/Program Files/R/R-3.4.3/library»‘ is not writable
Warning in install.packages :
cannot create dir ‘C:\Users\??????’, reason ‘Invalid argument’
Error in install.packages : unable to create ‘C:/Users/??????/Documents/R/win-library/3.4’
Здравствуйте, Алена!
Для того, чтобы я Вам помог, ответьте на три вопроса:
1) Вы используете свой личный компьютер или рабочий?
2) Вы используете RGui или RStudio?
3) На какой системе Вы запускаете программу: Windows, MacOS или Linux?
1) Я использую личный компьютер
2) RStudio
3) Windows
Запустите RStudio как администратор. Для этого кликните на иконку программы правой кнопкой мыши, и выберете в списке «Запуск от имени администратора». Все должно заработать. В противном случае, попробуйте воспользоваться советом номер 2 в конце данной статьи.
Добрый день.
> library(xlsx)
> distrib_data<-read_excel(file.choose(),sheet = 1)
Error in read_excel(file.choose(), sheet = 1) :
could not find function "read_excel"
Что с этим делать?
Добрый день,
Скорее всего Вы используете несуществующую функцию (перепутали название). Замените read_excel на read.xlsx, все должно заработать.
большое спасибо, все получилось)
Добрый день! В чем может быть ошибка если в загрузке данных в среду R напрямую из Excel таблиц на этапе указания пути и имени файла выдается ошибка: не могу найти функцию «read.xlsx»?
Здравствуйте, Елена!
Скорее всего Вы забыли загрузить пакет xlsx в Вашу текущую сессию R. Так как функция read.xlsx — это часть пакета xlsx, то прежде, чем работать с этой функцией, нужно загрузить сам пакет, используя команду:
library("xlsx")
На команду library выдается ошибка:
Загрузка требуемого пакета: rJava
Error: package or namespace load failed for ‘rJava’:
.onLoad не удалось в loadNamespace() для ‘rJava’, подробности:
вызов: fun(libname, pkgname)
ошибка: JAVA_HOME cannot be determined from the Registry
Ошибка: пакет ‘rJava’ нельзя загрузить
Сам пакет rJava я уже отдельно успешно распаковывала в среде R.
Есть ли у Вас не установлена Java на компьютере, то установите ее, используя эту ссылку.
Затем, установите JDK (Java Development Kit) на Ваш компьютер, не изменяя стандартных параметров установки.
И теперь снова попробуйте установить пакет xlsx.
Надеюсь, что этот рецепт поможет Вам решить сложившуюся проблему :-)
Опять я. Если же использовать классический способ, и пересохранить excel в
csv или txt, то русский шрифт выглядит нормально, но тогда в R почему-то пустые ячейки не заполняются значениями NA (при большом объеме реальных данных, притом что в Вашем примере в файле voenvuz, если в нем удалить часть данных, всё отлично заполняется NA значениями)… Не пойму, в чем дело((
В данном случае следует ввести дополнительный параметр na.strings:
read.table("mydata.csv", header = T, na.strings="")
Здравствуйте! Спасибо за полезную статью!
Но у меня проблема.
Подскажите, пожалуйста, что делать, если в excel-таблице есть данные на русском языке (и их много). В импортированной таблице в R в таких строках они отображаются в каком-то диком виде. Пробовала file->save with encoding->выбирала другие кодировки, ничего не выходит..
Здравствуйте, Мария!
После адреса файла введите дополнительный параметр — encoding. Например:
read.table(file("данные.txt", encoding = "UTF-8"), header = T)
P.S. Извините за поздний ответ, был в отпуске.
Спасибо большое! Но у меня вопрос.Дело в том, что экспортировалась таблица в кривом виде и вместе с пустыми ячейками после таблицы, которые обозначились как NA. Как сделать так, чтобы импортировались только данные? Может изначально excel файл подготовить для R. Если да. то как? Спасибо!
Здравствуйте ! Пришлите мне пожалуйста Вашу таблицу и команду, которую Вы отправляете в R для загрузки своей таблицы на e-mail: sergey@samoedd.com
Я постараюсь помочь.
спасибо!!!
автор спс
Спасибо, все получилось-)
Всегда пожалуйста!