Разное

Пакет r: The R Project for Statistical Computing

Содержание

Как установить R пакет и работать с его документацией

автор: Samoedd
Сентябрь 25, 2018

Сегодня был официальный релиз моего R пакета FishResp (бета-тестирование закончилось). В честь этого события решил поделиться боевым опытом с товарищами по цеху. Будет выпущено три статьи про R пакеты. А начнем мы с того, что узнаем для чего они нужны, как их установить на свой компьютер и как максимально эффективно работать с их документацией.

Что такое R пакет?

R пакет является расширением, созданным для решения конкретной задачи на языке R. Пакеты без которых трудно было бы представить работу в R, включены в базовую сборку и автоматически доступны после установки R на Ваш компьютер (так называемое ядро R). Например, пакет stat позволяет проводить статистические тесты, а благодаря пакету graphics возможно построение графиков в R. Однако большинство пакетов имеют узкоспециализированное применение и для работы с ними требуется «расширить» свою библиотеку R, установив необходимый для работы пакет на свой компьютер.

С технической точки зрения, R пакет — это совокупность R функций, данных и документации к ним, собранных в единое целое по стандартной схеме. Каждый пакет должен быть протестирован на предмет ошибок и соответствий стандартам официального архива R пакетов (CRAN). В случае обнаружения несоответствий, пакет не будет принят в CRAN. Благодаря такому подходу принципы работы с любым R пакетом одинаковы, чем обуславливается простота и удобство их использования. К осени 2018 года число пакетов в CRAN превысило 13000 !!!

Как установить и загрузить пакет в R?

Установить R пакет можно несколькими способами. Начнем с самого распространенного случая: установка пакета из CRAN. Для этого просто введите функцию install.packages в консоль, а аргументах которой напишите название искомого пакета (для примера возьмем пакет ggplot2):

install.packages("ggplot2")

В открывшемся окне со списком стран выберите любое зеркало для скачивания. Процесс установки пакета в Вашу библиотеку начнется автоматически. Иногда Вы можете заметить, что вместо одного пакета в Вашу библиотеку загружается несколько. Происходит это из-за того, что зачастую пакет использует функции или данные из других пакетов без которых установленный R пакет не сможет полноценно работать. Таким образом, пакет с зависимостями (dependencies) «подтягивает» другие пакеты и устанавливается в библиотеку вместе с ними.

После установки пакета необходимо загрузить его в Вашу текущую сессию, используя функцию library():

library("ggplot2")

Если это не сделать, функции установленого пакета работать не будут. Объясняется это тем, что при запуске R в него автоматически загружаются только базовые пакеты (о которых мы писали выше), остальные же необходимо загружать вручную.

Установка R пакета через GitHub

Однако не все R пакеты доступны в CRAN. Многие исследователи коллективно работают над R пакетами на платформе GitHub, где они делятся идеями, оповещают о найденных багах, исправляют их и уведомляют об этом остальных пользователей в онлайн режиме. Чаще всего на GitHub публикуются пакеты, которые все еще находятся в стадии разработки/тестирования, поэтому стабильность их работы не гарантирована. Для того, чтобы скачать R пакет с GitHub, необходимо установить сначала пакет «devtools», загрузить его в среду R и использовать функцию install_github(), где указываем в аргументах имя главного разработчика пакета и через слэш называние пакета:

install.packages("devtools") 
library("devtools") 
install_github("Author/PackageName")

Устанавливаем R пакет вручную (архив tar.gz или zip)

Некоторые пакеты находятся на других платформах (например ResearchGate), на сайтах исследовательских групп или личном вебсайте разработчика, откуда можно скачать R пакет на компьютер в виде архива с расширением .tar.gz или .zip. В этом случае, следует загружать пакет вручную, воспользовавшись все той же командой install.packages(). Однако в первом аргументе функции надо указать уже не имя пакета, а адрес скачанного архива, а также ввести дополнительные аргументы:

install.packages("Desktop/PackageName.tar.gz", repos = NULL, type="source")

Чтение документации — ключ к работе с R пакетами!

Документация является важнейшим элементом взаимодействия пользователя с Rпакетом. Она может быть представлена в виде поста на вебсайте, обучающего видео, научной публикации или справочного пособия. Первые три варианта позволяют наглядно продемонстрировать идею и возможности пакета. Именно с них я рекомендую начать знакомство с неизвестным для Вас пакетом (если они доступны в интернете).

Справочное пособие (Reference Manual), напротив, является техническим описанием R пакета, его функций и данных. В отличие от других видов документации справочное пособие есть у любого пакета доступного в CRAN. Оно написано в определенном формате и синхронизировано с кодом функций. В результате, справочную информацию можно искать при помощи справочных команд в среде R. Например, чтобы узнать описание установленного пакета ggplot2, просто вводим имя пакета, поставив перед ним знак вопроса:

?ggplot2

Перед нами появилась вся доступная информация о пакете ggplot2. Таким же способом можно посмотреть документацию конкретной функции: поставьте после имени пакета двойное двоеточие и имя искомой функции (допустим функция stat_ellipse):

?ggplot2::stat_ellipse

В документации функции Вы можете найти её описание (Description) полный список доступных аргументов, их расшифровку и возможные варианты заполнения (Arguments), какого рода данные она возвращает (Value), а также примеры её использования (Examples). Например, так выглядит автоматически открывшаяся документация в терминале (в RGUI и RStudio документация появится в правой части программы).

Все тоже самое можно найти в PDF формате на официальном сайте CRAN (например, справочное пособие пакета ggplot2). На первой странице находится описание R пакета, затем — список его функций и таблиц данных, далее — подробное техническое описание каждой из них в алфавитном порядке.

Заключение

После ознакомления с документацией, можно смело пользоваться R пакетом в своих целях. Здесь уже универсальных инструкций дать не могу, т.к. у всех нас задачи разные, и соответсвенно пакетами мы пользуемся разными. Поэтому если возникли трудности или вопросы, пишите их в комментариях, с радостью отвечу.

А в следующей статье мы будем собирать R пакет своими руками!

Обзор R пакетов для интернет маркетинга, часть 1 / Хабр

Всем привет, если вы занимаетесь интернет маркетингом наверняка вам ежедневно приходится сталкиваться со множеством рекламных сервисов и как минимум одной платформой веб аналитики, если вам требуется хотя бы раз в месяц, или может быть даже раз в неделю руками сводить данные о расходах, и прочую статистическую информацию из всех источников то это чревато не только большими временными затратами, но и вероятность ошибки при консолидации данных из множества источников в ручном режиме достаточно велика. В этой статье я подскажу готовые расширения (пакеты) для языка R, с помощью которых вы можете автоматизировать процесс сбора данных из большинства популярных рекламных систем и платформ веб аналитики.

Содержание

Если вы интересуетесь анализом данных возможно вам будут полезны мои telegram и youtube каналы. Большая часть контента которых посвящены языку R.

  1. Какой софт нам потребуется
  2. Как начать работу с R пакетами
  3. CRAN или GitHub
  4. Какие навыки нужны для работы с R пакетами
  5. ryandexdirect — загрузка данных из Яндекс.Директ
    • Возможности пакета ryandexdirect
    • Основные функции
    • Пример кода для загрузки статистики с помощью пакета ryandexdirect
  6. RAdwords — загрузка данных из Google Ads (ex Google AdWords)
    • Возможности пакета RAdwords
    • Основные функции пакета RAdwords
    • Пример работы с пакетом RAdwords
  7. adwordsR — более новый и функциональный пакет для загрузка=и данных из Google Ads (ex Google AdWords)
    • Возможности пакета adwordsR
    • Основные функции пакета adwordsR
    • Пример работы с пакетом adwordsR
  8. rfacebookstat — загрузка данных из рекламных кабинетов Facebook
    • Возможности пакета rfacebookstat
    • Основные функции пакета rfacebookstat
    • Пример кода для работы с rfacebookstat
  9. rvkstat — загрузка данных из API Вконтакте
    • Возможности пакета rvkstat
    • Основные функции пакета rvkstat
    • Пример кода для работы с пакетом rvkstat
  10. rmytarget — загрузка данных из API MyTarget
    • Возможности пакета rmytarget
    • Основные функции пакета rmytarget
    • Пример кода для работы с rmytarget
  11. rym — загрузка данных из API Яндекс.Метрики
    • Основные возможности пакета rym
    • Основные функции пакета rym
    • Пример работы с пакетом rym
  12. Заключение

Какой софт нам потребуется

Т.к. в данной статье мы говорим про язык R, то вам потребуется сам R и среда разработки RStudio.

И язык R, и RStudio являются бесплатным, свободно распространяемым программным обеспечением, поэтому вы свободно можете скачивать их из официальных сайтов.

Никаких сложностей с устновкой данного ПО у вас не должно возникнуть, но тем не менее, вот ссылка на короткий видео урок по этой теме.

Как начать работу с R пакетами

Ничего сложного для начала работы с R пакетами нет, осуществляется это следующим образом:

  1. Установка пакета, как правило с помощью базовой команды install.packages;
  2. Подключение пакета, каждый раз при старте нового сеанса работы с R, данная оперция может быть выполнена с помощью команды library или require.

Разница между library и require заключается только в том, что library выдаст ошибку в случае попытки подключения пакета, который у вас не установлен, а require в этом же случае просто покажет предупреждение, при этом выполнение скрипта будет продолжено.

Для установки приведённых в статье пакетов с GitHub вам предварительно необходимо установить пакет devtools, для этого выполните команду install.packages("devtools").

CRAN или GitHub

В ходе чтения данной статьи у вас возможно возникнет вопрос из какого репозитория лучше устанавливать тот, или иной пакет, на самом деле на GitHub как правило лежат наиболее актуальные dev версии пакетов от разработчиков, т.е. в них есть все новые функции которых возможно нет в версии пакета которая доступна на CRAN, но соответственно dev версия может быть на момент загрузки не достаточно протестирована и содержать ошибки.

Версия на CRAN перед загрузкой тщательно проверяется командой специалистов, и должна соответствовать всем требованиям политики данного репозитория, в случае загрузки пакета с CRAN вы можете быть уверены, что он никак не навредит вашим данным, не будет создать без вашего разрешения какие либо непонятные файлы на вашем ПК и т.д.

Какие навыки нужны для работы с R пакетами

На самом деле от вас потребуется только понимание предметной области интернет маркетинга, никаких навыков программирования в данном случае не требуется, т.к. речь буде идти о готовых пакетах, используя функции из которых вы сможете автоматизировать руинную часть своей работы.

В статье не будет подробного описание по работе с каждой функцией рассматриваемых пакетов, т.к. такая статья была бы слишком длинной, но я опишу возможности каждого пакета, дам список основных функций которые вам потребуется, а так же дам ссылку на официальную документацию, с помощью которой вы уже сможете наиболее подробно разобраться со всеми доступными в том, или ином пакете функциями. К тому же к каждому пакету я приведу небольшой пример кода, что бы вам был более понятен синтаксис.

ryandexdirect — загрузка данных из Яндекс.Директ

Установка пакета с CRAN: install.packages("ryandexdirect")

Установка пакета с GitHub: devtools::install_github("selesnow/ryandexdirect")

Официальная документация: ссылка

Данный пакет предназначен для работы с API одной из наиболее популярных рекламных площадок в СНГ — Яндекс.Директ.

Возможности пакета ryandexdirect

  1. Авторизация в API Яндекса;
  2. Загрузка списка рекламных кампаний, ключевых слов, объявлений;
  3. Загрузка статистических данных из аккаунтов Яндекс.Директ с помощью сервиса Reports.
  4. Остановка и возобновление показов объявлений на уровне рекламных кампаний, ключевых слов и объявлений.
  5. Запрос остатка средств и других параметров общего счёта.
  6. Загрузка справочной информации (курсы валют, географический справочник и т.д.)

Основные функции

Основные функции доступные в ryandexdirect, которые могут вам понадобиться для работы с API Яндекс.Директ:

  • yadirAuth — Авторизация в API;
  • yadirGetAds, yadirGetCampaignList, yadirGetKeyWords — Загрузка списка объявлений, рекламных кампаний, ключевых слов;
  • yadirGetReport — Загрузка статистики из Яндекс.Директ.
  • yadirGetDictionary — Загрузка справочной информации.
  • yadirStartAds, yadirStartCampaigns, yadirStartKeyWords

Пример кода для загрузки статистики с помощью пакета ryandexdirect

library(ryandexdirect)
stat <- yadirGetReport(ReportType = "ACCOUNT_PERFORMANCE_REPORT", 
                       DateRangeType = "CUSTOM_DATE", 
                       DateFrom = "2018-01-01", 
                       DateTo = "2018-05-10", 
                       FieldNames = c("AdNetworkType",
                                               "Impressions",
                                               "Clicks",
                                               "Cost"), 
                       FilterList = c("CampaignId IN 123456 ,987654","Clicks GREATER_THAN 100"),
                       IncludeVAT = "YES", 
                       IncludeDiscount = "NO", 
                       Login = "ваш логин", 
                       TokenPath = "C:/token_yandex")

Более подробно о каждом аргументе можно узнать из официальной справке ryandexdirect или Яндекс.Директ API Reports сервис.

Так же достаточно подробно пакет ryandexdirect рассмотрен в вебинаре «Как маркетологу избавиться от рутины с помощью языка R и наконец то заняться маркетингом».

RAdwords — загрузка данных из Google Ads (ex Google AdWords)

Установка пакета с CRAN: install.packages("RAdwords")

Установка пакета с GitHub: devtools::install_github("jburkhardt/RAdwords")

Официальная документация: ссылка

Возможности пакета RAdwords

Основная возможность данного пакета — авторизация в API Google Ads и загрузка статистики из всех доступных в данном интерфейсе отчётов.

Основные функции пакета RAdwords

На самом деле пакет в принципе содержит не особо много функций, но я за всё время пользовался всего тремя:

  • doAuth — Авторизация;
  • statement — Формирование тела запроса к API;
  • getData — Загрузка данных из API.

Пример работы с пакетом RAdwords

library(RAdwords)
# запрос токена
adw_token <- doAyth()

# формирование запроса
body <- statement(select=c('AccountDescriptiveName',
                           'ExternalCustomerId',
                           'AccountCurrencyCode',
                           'AdNetworkType1',
                           'RegionCriteriaId',
                           'CountryCriteriaId',
                           'CityCriteriaId',
                           'Device',
                           'Month',
                           'Year',
                           'Impressions',
                           'Clicks',
                           'Interactions',
                           'VideoViews',
                           'Cost',
                           'Conversions'
),
    report="GEO_PERFORMANCE_REPORT",
    start="2018-09-01",
    end="2018-09-20")

my_data <- getData(clientCustomerId = "000-000-0000",
                   google_auth = adw_token ,
                   statement = body,
                   transformation = T)

Список доступных в API Google Ads отчётов, и полей вы можете найти по ссылке в официальной справке.

Этот пакет также рассматривается в вебинаре «Как маркетологу избавиться от рутины с помощью языка R и наконец то заняться маркетингом».

adwordsR — более новый и функциональный пакет для загрузка=и данных из Google Ads (ex Google AdWords)

Установка пакета с CRAN: install.packages("adwordsR")

Установка пакета с GitHub: devtools::install_github("cran/adwordsR")

Пакет adwordsR по смыслу схож с RAdwords, но он более новый, и имеет гораздо больший набор функций.

Возможности пакета adwordsR

Помимо описанных выше возможностей пакета RAdwords, adwordsR даёт вам широкие возможности по работе с TargetingIdeaService, службе с помощью которой можно получать варианты таргетинга прямо из инструмента или платформы, что помогает автоматизировать оптимизацию аккаунта.

Основные функции пакета adwordsR

  • generateAdwordsToken — Запрос токена для работы с API Google Ads;
  • loadAdwordsToken — Загрузка запрошенного, и сохранённого ранее токена;
  • getReportData — Загрузка статистики из аккаунта Google Ads.

Пример работы с пакетом adwordsR

library(adwordsR)
# Запрос токена
adw_token <- generateAdwordsToken(saveNewToken = TRUE, addGitignore = FALSE)
# Загрузка ранее сохранённого токена 
adw_token <- loadAdwordsToken()
# Запрос данных
AdWordsData <- getReportData(reportType             = "CAMPAIGN_PERFORMANCE_REPORT",
                             startDate              = "2018-08-01",
                             endDate                = "2018-08-15",
                             clientCustomerId       = "000-000-0000",
                             credentials            = adw_token,
                             attributes             = "CampaignName,CampaignStatus",
                             segment                = "Date,AdNetworkType1",
                             metrics                = "AverageCost,Clicks,Conversions",
                             includeZeroImpressions = TRUE,
                             useRequestedHeaders = FALSE)

rfacebookstat — загрузка данных из рекламных кабинетов Facebook

Установка пакета с CRAN: install.packages("rfacebookstat")

Установка пакета с GitHub: devtools::install_github("selesnow/rfacebookstat")

Официальная документация: ссылка

Возможности пакета rfacebookstat

  1. Авторизация в API Facebook
  2. Загрузка списка доступных вам бизнес-менеджеров;
  3. Загрузка списка рекламных аккаунтов;
  4. Загрузка списка рекламных кампаний, групп объявлений, объявлений.
  5. Загрузка статистики на уровне рекламного аккаунта, рекламных кампаний, групп объявлений и объявлений.
  6. Загрузка списка пользователей у которых есть доступ к рекламному аккаунту.
  7. Управление доступами к рекламным аккаунтам.

Основные функции пакета rfacebookstat

  • fbGetToken — Авторизация в API Facebook;
  • fbGetBusinessManagers — Загрузка списка бизнес менеджера;
  • fbGetAdAccounts — Загрузка списка рекламных аккаунтов;
  • fbGetCampaigns, fbGetAds, fbGetAdSets — Загрузка списка рекламных кампаний, объявлений и групп объявлений;
  • fbGetMarketingStat — Загрузка статистики из рекламных аккаунтов Facebook.

Пример кода для работы с rfacebookstat

library(rfacebookstat)
token <- fbGetToken(app_id = 00000000000000)
fb_data <- fbGetMarketingStat(accounts_id = "act_00000000000000",
                              level = "campaign",
                              fields = "campaign_name,actions",
                              action_breakdowns = "action_link_click_destination",
                              date_start = "2017-11-01",
                              date_stop = "2017-11-20",
                              interval = "day",
                              access_token = token)

У пакета rfacebookstat есть официальный плейлист на YouTube с подробными, русскоязычными видео уроками.

rvkstat — загрузка данных из API Вконтакте

Установка пакета с GitHub: devtools::install_github("selesnow/rvkstat")

Официальная документация: ссылка

Достаточно мощный и многофункциольный пакет для работы с API социальной сети Вконтакте.

Возможности пакета rvkstat

  1. Авторизация в API Вконтакте;
  2. Загрузка данных из рекламных кабинетов Вконтакте;
  3. Загрузка справочной информации из Вконтакте;
  4. Загрузка некоторой информации о пользователе Вконтакте;
  5. Загрузка статистики из рекламного кабинета Вконтакте;
  6. Загрузка статистики о посещениях сообществ Вконтакте.

Основные функции пакета rvkstat

Пакет rvkstat на момент написания статьи содержит более 30 функции, вот наиболее полезные из них:

  • vkAuth — Авторизация;
  • vkGetAdStatistics — Загрузка статистики из рекламного кабинета;
  • vkGetAdCampaigns, vkGetAds — Загрузка списка рекламных кампаний и объявлений;
  • vkGetGroupStat — Загрузка статистики о посещении групп и сообществ Вконтакте.

Пример кода для работы с пакетом rvkstat

library(rvkstat)
my_tok <- vkAuth(app_id = 111,app_secret = "efbscuyewb7cb4ru4bj")
# Список рекламных кампаний
camp <- vkGetAdCampaigns(account_id = 1, access_token = my_tok$access_token)
# Статистика по рекламным кампаниям
vk_stat_by_campaign <- vkGetAdStatistics(account_id = 1,
                                         ids_type = "campaign",
                                         ids = camp$id ,
                                         period = "day",
                                         date_from = "2010-01-01", 
                                         date_to = "2017-09-10",
                                         access_token = my_tok$access_token)

rmytarget — загрузка данных из API MyTarget

Установка пакета с CRAN: install.packages("rmytarget")

Установка пакета с GitHub: devtools::install_github("selesnow/rmytarget")

Официальная документация: ссылка

Возможности пакета rmytarget

  1. Авторизация в API MyTarget по схеме Code Grant;
  2. Загрузка списка рекламных кампаний, объявлений.
  3. Загрузка статистики на уровне рекламных кампаний и объявлений.

Основные функции пакета rmytarget

  • myTarAuth — Авторизация;
  • myTarGetAdList, myTarGetCampaignList — Загрузка списка объявлений и рекламных кампаний;
  • myTarGetStats — Загрузка статистики по объявлениям и рекламным кампаниям.

Пример кода для работы с rmytarget

library(rmytarget)
# запрос списка объявлений 
Ads <- myTarGetAdList(login = "ваш логин")
# запрос статистики по объявлениям
a_stat <- myTarGetStats(date_from = "2016-08-01",
                        date_to = "2016-08-10",
                        object_type = "banners",
                        object_id = Ads$id,
                        stat_type = "day",
            login = "ваш логин")

rym — загрузка данных из API Яндекс.Метрики

Установка пакета с CRAN: install.packages("rym")

Установка пакета с GitHub: devtools::install_github("selesnow/rym")

Официальная документация: ссылка

Основные возможности пакета rym

Пакет rym позволяет вам работать со всеми доступными в Яндекс.Метрики API интерфейсами:

  1. Авторизация по протоколу oAuth3;
  2. Работа с API управления;
  3. Работа с API отчётов;
  4. Работа с API совместимым с Core API Google Analytics v3;
  5. Работа с Logs API.

Основные функции пакета rym

  • rym_auth — Авторизаця;
  • rym_get_counters — Загрузка списка счётчиков Яндекс.Метрики;
  • rym_get_data — Загрузка данных из API отчётов;
  • rym_get_ga — Загрузка данных из API совместимым с Core API Google Analytics;
  • rym_get_logs — Загрузка сырых данных из Logs API.

Пример работы с пакетом rym

reporting.api.stat <- rym_get_data(counters   = "00000000,111111111",
                                   date.from  = "2018-08-01",
                                   date.to    = "yesterday",
                                   dimensions = "ym:s:date,ym:s:lastTrafficSource",
                                   metrics    = "ym:s:visits,ym:s:pageviews,ym:s:users",
                                   filters    = "ym:s:trafficSourceName=='Переходы из поисковых систем' AND ym:s:isNewUser=='Yes'",
                                   sort       = "-ym:s:date",
                                   accuracy   = "full",
                                   login      = "ваш логин",
                                   token.path = "metrica_token",
                                   lang       = "ru")

Вебинар Как автоматизировать работу с данными Яндекс.Метрики. С помощью языка R. поможет вам углубиться в функционал пакета rym.

Итак с помощью приведённых в этой статье пакетов вы вполне можете автоматизировать сбор данных из таких источников как Яндекс.Директ, Google Ads, Facebook, Вконтакте, MyTarget и Яндекс.Метрика. Конечно это далеко не исчерпывающий список сервисов которые используются интрент маркетологами, но уместить все инструменты в одну статью достаточно проблематично, поэтому если данная статья получит положительные отзывы я напишу продолжение.

Далее полученные данные можно преобразовывать с помощью пакета dplyr, и записывать в различные базы данных с помощью DBI интерфейса, но это уже довольно объёмные темы для следующих статей.

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

Подписывайтесь на мой телеграм и youtube каналы, большая часть контента которых составляют полезные материалы посвящённые языку R.

Пакет R на русском

Пакет R на русском


В последние годы самым популярным средством проведения статистических расчетом стала среда разработки с открытым кодом R. Она работает под разными операционными системами (в том числе и под Windows разных версий), активно поддерживается мировым научным сообществом и постоянно развивается. Среда разработки R стала фактическим стандартом проведения статистических расчетов для научных публикаций.
Откуда это взялось:

Этот пакет появился как побочный эффект от различных расчетов и разработки иллюстраций к статьям, представленным на этом сайте
Скачать


Существенным плюсом среды является ее бесплатность для конечного пользователя. Дистрибутив ядра R невелик и доступен для скачивания из интернета.


Ядро R способно удовлетворить потребности в статистических вычислениях и визуализации данных во многих случаях. Однако его универсальность определяется концепцией использования т.н. «пакетов» (“packages”), специальным образом организованных, подключаемых к R библиотек, как правило, созданных для решения узкоспециализированных статистических, графических или каких-либо других задач. Пакеты можно устанавливать по мере возникновения необходимости решения той или иной задачи. При этом популярность R такова, что сейчас можно найти пакет для решения практически любой мыслимой статистической задачи. В каждом пакете содержится от единиц до десятков специализированных функций и могут содержаться зависимости от других пакетов.


Обратной стороной универсальности R является огромное количество различных пакетов (по состоянию на июнь 2017 – более 11000) и функций в них, а также отсутствие какой-либо внятной их структуры и системы помощи. Кроме того, практика R такова, что многие его функции имеют десяток и более параметров.


Следствием сказанного выше является высокий порог вхождения в использование R. Пользователь без подготовки и/или без навыков работы со справочными материалами никаких практических результатов от пользования R, скорее всего, не получит. Кроме того, встроенная справочная система R представлена на английском языке.


Между тем большинству пользователей никакие специальные статистические возможности не нужны, как не нужны и многочисленные настройки. Как правило, нужны самые простые возможности, реализованные при стандартных установках.


Задачей настоящей разработки является написание пакета R (название denik), сформированного по стандартным правилам, в котором:

  • • Функции выполняют задачи, наиболее популярные при статистических расчетах у биологов, селекционеров, врачей и других специалистов естественнонаучных направлений (например, расчет доверительных интервалов, коэффициентов корреляции, описательной статистики, заполнение пробелов в таблицах и пр.)
  • • Функции обладают минимальным необходимым количеством настроек (например, по умолчанию уровень доверия 95%, пропуски выбрасываются из расчета, нет заголовков и пр.)
  • • Встроенная справочная система – на русском языке (?название_функции, например, ?mycor
  • • Сохраняется в прозрачном для пользователя виде возможность установки дополнительных настроек


Текущая версия пакета 1.0.4. Ниже перечислены включенные в него функции. Этот список будет пополняться по мере возникновения необходимости.

  1. dna — Набор данных. Нуклеотидная последовательность хлоропластной ДНК гороха (122 Kbp)
  2. men — Набор данных. Таблица Менделеева
  3. myarea — Функция рассчитывает площадь под кривой
  4. myconf — функция рассчитывает доверительный интервал
  5. mycop — функция обмена данными между буфером обмена и R
  6. mycor — Функция считает корреляцию по Пирсону и Спирмену
  7. mycrcor — Функция рассчитывает кросс-корреляцию
  8. mycvet — Функция анализа цветового состава изображения
  9. mycvet1 — Функция анализа цветового состава изображения — отношение числа зеленых пикселов к сумме зеленых и красных
  10. mymolal — Функция расчета раствора заданной моляльности
  11. mymolar — Функция расчета раствора заданной молярности
  12. mynorm — Функция нормализует данные от 0 до 1
  13. mypere — Функция генерирует все возможные перестановки объектов
  14. mypoisk — Поиск в научных базах данных
  15. mysrv — Функция сравнивает выборки
  16. mystats — Функция вычисляет описательные статистики
  17. mystats2 — Функция вычисляет описательные статистики (2 версия)
  18. ottenok — Набор данных. Соответствие между RGB и названием цветов и их оттенков


Отсюда можно скачать собственно пакет. Для его установки скопируйте и запустите в R код, приведенный ниже. По ходу установки скрипт попросит вас найти скачанный пакет.

А можно просто самому установить пакеты «psych», «DescTools», «RISmed», «ggplot2» и «caret», а затем установить пакет «denik» из директории, куда вы его сохранили.

Если что-нибудь не сработало, не обессудьте. Как я докладывал, это не коммерческий проект. Пакету, например, могло не понравиться, что R расположен в нестандартной директории, и в пути есть пробел. У меня было такое при установке на какую-то конфигурацию Win10.

Будем пополнять пакет по мере появления необходимости в новых функциях.

Если есть пожелания — пишите. Адрес слева, пункт «Контакты».


#---------------------скопировать отсюда

ustanovleno
spisok
for(p in spisok){

if(!(p %in% ustanovleno)){

install.packages(p)

print(paste("Пакет ", p, " установлен"))

}

else{

print(paste("Пакет ", p, " уже установлен"))

}

}

install.packages(file.choose(), repos = NULL, type="source")

library(denik)

#---------------------скопировать досюда

Джентельменский набор пакетов R для автоматизации бизнес-задач / Хабр

Продолжение предыдущих публикаций «Инструменты DataScience как альтернатива классической интеграции ИТ систем» и
«Экосистема R как инструмент для автоматизации бизнес-задач».

Настоящая статья является ответом на возникшие вопросы по пакетам R, которые полезны для реализации описанных подходов. Я ее рассматриваю исключительно как справочную информацию, и отправную точку для последующего детального изучения заинтересовавшимися, поскольку за каждым пакетом скрывается огромное пространство со своей философией и идеологией, математикой и путями развития.

Как правило, все пакеты (9109 штук на 07.09.2016) находятся в репозитории CRAN. Те, что по тем или иным причинам, пока не опубликованы в репозиторий, могут быть найдены на GitHub. Итак, кратким списком:

Детально про пакеты можно прочесть на репозитории GitHub

  • dplyr — расширения грамматических конструкций для манипуляций с данными. В качестве вводной статьи, я бы посоветовал «dplyr and pipes: the basics», несмотря на то, что опубликована она была в 2014-м году
  • ggplot2 — расширения грамматических конструкций для визуализации. Представление о возможностях можно получить в книге «Cookbook for R», глава «Graphs»
  • scales — расширение ggplot2 для масштабирования осей графиков
  • ggmap — расширение ggplot2 для работы с картографией
  • lubridate — «магия» по работе с датами и временем. Идеология описана в статье «Dates and Times Made Easy with lubridate»
  • readr — улучшенный импорт текстовых данных в R
  • forcats — улучшенная работа с категориальными переменными
  • tibble — современное переосмысление штатной структуры данных data.frame
  • readxl — импорт excel данных в R
  • purrr — расширения грамматических конструкций для функционального программирования
  • tidyr — улучшенная работа с «грязными» исходными данными. Идеология описана в статье «Tidy Data»
  • reshape2 — улучшенная трансформация данных. Идеология описана в статье «Reshaping Data with the reshape Package»
  • stringr — улучшенная работа с текстовыми строками
  • curl — улучшенный подход для работы с данными по HTTP
  • httr — упрощенный подход по работе с данными по протоколу http
  • xml2 — улучшенная работа по поддержке XML
  • futile.logger — развитая система логирования
  • iterators — поддержка итераторов
  • foreach — улучшенная поддержка циклических конструкций
  • magrittr — грамматика работы с маршрутизацией данных (pipe)
  • jsonlite — упрощенная поддержка JSON
  • sp — поддержка работы с геоданными
  • data.table — расширение штатной модели данных data.frame для работы с большими данными
  • broom — преобразование данных стат. функций в формат tidy data (см. выше). Детально можно ознакомиться в статье broom: An R Package for Converting Statistical Analysis Objects Into Tidy Data Frames
  • knitr — подготовка документов различных форматов (статика и интерактив, детальнее здесь) из единого формата R Markdown. В целом, это вообще отдельный мир.
  • shiny — сам фреймворк
  • shinythemes — дополнительные темы (shiny построен на bootstrap)
  • highcharter — враппер для highcharts
  • googleVis — коннектор к Google Charts диаграмм. Детальнее здесь и здесь
  • shinydashboard — наборы функций для построения дашбордов (немного устарел)
  • flexdashboard — современный подход к построению дашбордов. Детально можно ознакомиться здесь
  • shinyjs — дополнительный JS интерактив
  • htmlwidgets — поддержка html виджетов, галерея здесь
  • plotly — интерфейс к интерактивной системе визуализации Plot.ly. Детально можно ознакомиться здесь
  • leaflet — враппер для интерактивных карт JS leaflet. Детально можно ознакомиться здесь
  • DT — враппер для интерактивных таблиц JS DataTable. Детально можно ознакомиться здесь
  • rbokeh — R интерфейс к библиотеке визуализации Bokeh. Детально можно ознакомиться здесь
  • RColorBrewer — пакет для гибкой работы с цветами
  • viridis — цветовая палитра Virdis. Детали здесь
  • wesanderson — еще палитра
  • ggthemes — темы для ggplot2. Детали здесь

В своей деятельности я еще использую 2-3 десятка других пакетов, но они имеют более узкую специфику, либо просто обеспечивают коннекты к внешним источикам (ODBC, No-SQL, git, dropbox, etc.)

Предыдущий пост: «Экосистема R как инструмент для автоматизации бизнес-задач»

Следующий пост: «Применение R для работы с утверждением «Кто виноват? Конечно ИТ!»»

Лучшие пакеты для машинного обучения в R, часть 2

Один из наиболее частых вопросов, с которыми сталкиваются специалисты по обработке и анализу данных — «Какой язык программирования лучше всего использовать для решения задач, связанных с машинным обучением?» Ответ на этот вопрос всегда приводит к сложному выбору между R, Python и MATLAB. Вообще говоря, никто не может дать объективный ответ, какой же язык программирования лучше. Конечно, язык, который вы выбираете для машинного обучения, зависит от ограничений конкретной задачи и данных, предпочтений самого специалиста и тех методов машинного обучения, которые нужно будет применить. Согласно опросу о любимом инструменте пользователей Kaggle для решения задач анализа данных R предпочитают 543 из 1714.

Сейчас в CRAN доступен 8341 пакет. Кроме CRAN, есть и другие репозитории с большим количеством пакетов. Синтаксис для установки любого из них прост: install.packages(“Name_Of_R_Package”).

Вот несколько пакетов, без которых вы вряд ли обойдетесь, как специалист по анализу данных: dplyr, ggplot2, reshape2. Безусловно, это не полный список. В этой статье мы подробнее остановимся на пакетах, применяемых в машинном обучении.

5. randomForest: собрать много деревьев в лес

Алгоритм случайного леса — один из наиболее широко используемых алгоритмов машинного обучения. Пакет randomForest используется для создания большого количества деревьев решений, после чего каждое наблюдаемое значение помещается в дерево. Результат, содержащий наибольшее количество значений, считается финальным. Для применения алгоритма randomForest нужно убедиться, что все переменные являются либо числовыми, либо факторными. Фактор не может иметь более 32 уровней, если используется randomForest.

Как вы, возможно, знаете, алгоритм случайного леса берет случайные наборы переменных и значений и строит много деревьев. В конце концов эти деревья объединяются, и на основании лучшего решения определяется класс зависимой переменной.

Давайте возьмем для примера набор данных iris, чтобы построить случайный лес с помощью пакета randomForest.

Rf_fit<-randomForest(formula=Species~., data=iris)

Нужно выполнить строку кода по аналогии с остальными пакетами, и можно применять алгоритм случайного леса. Давайте посмотрим, как он работает.

print(Rf_fit)
Call:
 randomForest(formula = Species ~ ., data = iris) 
               Type of random forest: classification
                     Number of trees: 500
No. of variables tried at each split: 2

        OOB estimate of  error rate: 4.67%
Confusion matrix:
           setosa versicolor virginica class.error
setosa         50          0         0        0.00
versicolor      0         47         3        0.06
virginica       0          4        46        0.08
importance(Rf_fit)
             MeanDecreaseGini
Sepal.Length        10.200682
Sepal.Width          2.673111
Petal.Length        43.116951
Petal.Width         43.246585

Возможно, потребуется варьировать разные управляющие параметры randomForest, например, количество переменных в каждом дереве, количество деревьев, которые нужно построить, и т.д. Обычно специалисты по анализу данных выполняют несколько итераций и выбирают наилучшую комбинацию.

6. nnet: все дело в скрытых уровнях

Это наиболее широко используемый и легкий для восприятия пакет для работы с нейронными сетями, но его ограничение — один уровень узлов. Однако, согласно некоторым исследованиям, больше и не требуется, поскольку они не только не добавляют модели производительности, но и увеличивают время вычисления и сложность модели.

Этот пакет не предоставляет никаких специальных методов для определения количества узлов на скрытом уровне. Поэтому когда специалисты по работе с большими данными применяют nnet, всегда предполагается, что нужно указать значение, лежащее между количеством входных и выходных узлов. Пакет nnet предоставляет реализацию алгоритма искусственных нейронных сетей (Artificial Neural Networks, ANNs), который создан исходя из знания о том, как работает человеческий мозг, на основе входных и выходных сигналов. ANNs широко применяется для прогнозирования в авиации. В частности, нейронные сети дают лучшие результаты прогнозирования с применением функций nnet, чем стандартных методов прогнозирования, таких как экспоненциальное сглаживание, регрессия, т.д.

В R есть много пакетов для построения нейронных сетей, например, nnet, neuralnet, RSNNS. Давайте снова воспользуемся для примера набором данных iris (подозреваю, он вам уже надоел). Попробуем спрогнозировать Species с nnet и посмотреть, как это выглядит.

nnet_model <- nnet(Species~., data=iris, size = 10)

В выходной нейронной сети можно увидеть 10 скрытых слоев, т.к. мы установили size=10 при построении нейронной сети.

К сожалению, легкого пути построить полученную нейронную сеть нет, но на github есть множество специальных функций для этой цели. Например, для построения сети выше была использована эта.

7. e1071: векторы как опора для вашей модели

Это очень важный пакет языка R, в котором есть специальные функции для реализации наивного классификатора Байеса (условная вероятность), метода опорных векторов (Support Vector Machines, SVM), Фурье-преобразования, нечеткой кластеризации и т.д. Скажем, первая реализация SVM в R была именно в пакете e1071. Отлично подходит для случаев, когда, допустим, нужно определить, какова вероятность того, что человек, купивший iPhone 6S, также купит чехол для него.

Этот вид анализа основан на условной вероятности, поэтому специалисты по анализу данных используют пакет e1071, где есть функции, реализующие наивный классификатор Байеса.

Метод опорных векторов пригодится, если ваш набор данных не разделяется в исходной размерности, и вам нужно привести данные к более высокой размерности, чтобы воспользоваться методами классификации или регрессии. SVM использует кернфункции (для оптимизации математических операций) и максимизирует расстояние между двумя классами.

Синтаксис функций, реализующих SVM, аналогичен:

svm_model <- svm(Species ~Sepal.Length + Sepal.Width, data=iris)

Для визуализации SVM воспользуемся функцией plot() с соответствующими данными:

plot(svm_model, data = iris[,c(1,2,5)])

На графике выше четко видны границы, полученные после применения SVM к данным iris.

Есть множество параметров, которые вам, возможно, придется менять, чтобы получить наилучшую точность (kernel, cost, gamma, coefficients и др.). Для получения хорошей классификации с помощью SVM придется поэкспериментировать со многими из этих параметров: скажем, kernel может принимать разные значения — linear, Gaussian, Cosine.

8. kernLab: хорошо упакованное ядро

Kernlab использует преимущества объектной модели S4 в R, чтобы специалисты по анализу данных могли воспользоваться алгоритмами машинного обучения на основании ядер. В Kernlab есть реализации SVM, ядерного анализа, примитивов скалярного произведения, алгоритма ранжирования, гауссовых процессов и алгоритма спектральной кластеризации. Методы машинного обучения на основании ядер применяются, когда сложно решить задачи классификации, кластеризации и регрессии в пространстве результатов наблюдений.

Пакет Kernlab широко используется как реализация SVM, облегчающая задачу распознавания образов. Есть множество кернфункций, например, tanhdot (гиперболическая тангенсная кернфункция), polydot (полиномиальная кернфункция), laplacedot (кернфункция Лапласа) и другие, применяемые в распознавании образов.

Кернфункции чрезвычайно важны для SVM. Этот метод без них был бы невозможен.

SVM — не единственная техника, использующая ядра. Есть много других полезных и известных алгоритмов на основании ядер, таких как метод случайных вихрей (random vortex method, RVM), ядерный анализ главных компонент, уменьшение размерности, т.д. Пакет kernLab содержит порядка 20 таких алгоритмов. В kernLab есть свои предопределенные ядра, но пользователь может создавать и использовать свои собственные кернфункции.

Давайте инициализируем свою собственную радиальную базисную функцию среднеквадратическим значением 0,01.

    Myrbf <- rbfdot(sigma = 0.01)
    Myrbf   
Gaussian Radial Basis kernel function. 
 Hyperparameter : sigma =  0.01 

Можно узнать класс Myrbf, просто применив функцию class() к только что созданному объекту.

class(Myrbf)
[1] "rbfkernel"
attr(,"package")
[1] "kernlab"

Каждое ядро принимает на вход два вектора и возвращает их скалярное произведение. Давайте зададим два вектора и увидим их скалярное произведение.

    x<-rnorm(10)
    y<-rnorm(10)
    Myrbf(x,y)
          [,1]
[1,] 0.8443782

Мы создали две случайных нормально распределенных переменных, х и у, каждая с 10 значениями, и вычислили их скалярное произведение с помощью кернфункции Myrbf.

Давайте посмотрим на SVM с применением кернфункции Myrbf. Снова воспользуемся набором данных iris, чтобы понять, как работает SVM с применением kernLab.

    Kernlab_svm <- ksvm(Species ~ Sepal.Length + Sepal.Width, data = iris, kernel = Myrbf, C=4)
    Kernlab_svm    
Support Vector Machine object of class "ksvm" 

SV type: C-svc  (classification) 
 parameter : cost C = 4 

Gaussian Radial Basis kernel function. 
 Hyperparameter : sigma =  0.01 

Number of Support Vectors : 103 

Objective Function Value : -95.3715 -70.6262 -291.6249 
Training error : 0.2 

Давайте используем построенную только что SVM для прогнозирования:

    predicted<-predict(Kernlab_svm,iris)
    table(predicted = predicted, true = iris$Species)
            true
predicted    setosa versicolor virginica
  setosa         49          0         0
  versicolor      1         37        16
  virginica       0         13        34

Заключение

Каждый пакет или функция в R имеет свои значения по умолчанию. Перед тем, как применять какой бы то ни было алгоритм, имеет смысл узнать, какие опции доступны. Значения по умолчанию дадут вам какой-то результат, но нет уверенности, что он будет наиболее оптимальным или точным.

В CRAN есть и другие пакеты для машинного обучения, например, igraph, glmnet, gbm, tree, CORElearn, mboost и др. Они применяются в различных сферах для построения наиболее эффективных моделей. Можно столкнуться с ситуациями, когда изменение одного параметра полностью поменяет вид выходных данных. Поэтому не стоит так уж полагаться на значения по умолчанию: изучите свои данные и требования, прежде чем применять какой-то алгоритм.

R Language — Создание и распространение пакетов

пример

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

Каталог, в котором находится ваш код, будет обозначаться как ./ , и все команды предназначены для выполнения из приглашения R в этой папке.


Документация для вашего кода должна быть в формате, который очень похож на LaTeX.

Однако для упрощения процесса мы будем использовать инструмент с именем roxygen :

install.packages("devtools")
library("devtools")
install.packages("roxygen2")
library("roxygen2")

Полную страницу man для roxygen можно найти здесь . Он очень похож на doxygen .

Ниже приведен практический пример о том, как документировать функцию с помощью roxygen :

#' Increment a variable.
#'
#' Note that the behavior of this function
#' is undefined if `x` is not of class `numeric`.
#'
#' @export
#' @author  another guy
#' @name    Increment Function
#' @title   increment
#'
#' @param x   Variable to increment
#' @return    `x` incremented of 1
#'
#' @seealso   `other_function`
#'
#' @examples
#' increment(3)
#' > 4
increment <- function(x) {
  return (x+1)
}

И вот будет результат .

Также рекомендуется создать виньетку (см. Раздел « Создание виньет» ), который является полным руководством по вашему пакету.


Предполагая, что ваш код написан, например, в файлах ./script1.R и ./script2.R , запустите следующую команду, чтобы создать дерево файлов вашего пакета:

package.skeleton(name="MyPackage", code_files=c("script1.R","script2.R"))

Затем удалите все файлы в ./MyPackage/man/ . Теперь вы должны составить документацию:

roxygenize("MyPackage")

Вы также должны создать справочное руководство из своей документации, используя R CMD Rd2pdf MyPackage из командной строки, запущенной в ./ .


1. Описание пакета

Измените ./MyPackage/DESCRIPTION соответствии с вашими потребностями. Поля Package , Version , License , Description , Title , Author и Maintainer являются обязательными, другие необязательны.

Если ваш пакет зависит от других пакетов, укажите их в поле с именем Depends (версия R <3.2.0) или Imports (версия R> 3.2.0).

2. Дополнительные папки

Когда вы запустили сборку скелета, ./MyPackage/ только R/ и man/ subfolders. Однако у него могут быть и другие:

  • data/ : здесь вы можете поместить данные, которые нужны вашей библиотеке, и которые не являются кодом. Он должен быть сохранен как набор данных с расширением .RData , и вы можете загрузить его во время выполнения с data() и load()
  • tests/ : все файлы кода в этой папке будут запускаться во время установки. Если произошла ошибка, установка завершится с ошибкой.
  • src/ : для исходных файлов C / C ++ / Fortran (с помощью Rcpp …).
  • exec/ : для других исполняемых файлов.
  • misc/ : для всего остального.

Вы можете удалить ./MyPackage/Read-and-delete-me .

Как и сейчас, ваш пакет готов к установке.

Вы можете установить его с помощью devtools::install("MyPackage") .

Чтобы создать свой пакет в качестве исходного tarball, вам нужно выполнить следующую команду из командной строки в ./ : R CMD build MyPackage


Через Гитуб

Просто создайте новый репозиторий MyPackage и загрузите все в MyPackage/ в главную ветку. Вот пример .

Тогда любой может установить ваш пакет из github с помощью devtools:

install_package("MyPackage", "your_github_usename")

Через CRAN

Ваш пакет должен соответствовать политике репозитория CRAN . Включая, но не ограничиваясь: ваш пакет должен быть межплатформенным (за исключением некоторых особых случаев), он должен пройти R CMD check проверки R CMD check .

Вот форма подачи . Вы должны загрузить исходный архив.

Наиболее простой способ обновить язык R (пакет installr) — Alexey Seleznev blog

Несколько раз в год выходят обновления для языка R, примерно раз в пол года выходят достаточно важные обновления.

Для того, что бы не упустить последний функционал, и оптимизацию языка я всегда рекомендую обновлять его при выходе даже незначительных обновлений.

Почему просто не скачать и установить новую версию

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

С годами вы используете в своих скриптах всё больше и больше различных пакетов, и попросту даже вспомнить название всех будет довольно затруднительно.

К счастью, на самом деле в R есть пакет на любой случай жизни, в том числе и для обновления самого R есть пакет, называется он installr.

Прелесть пакета заключается в том, что он позволяет перенести все установленные ранее пакеты в новую версию R.

Как обновить R через пакет installr

Ниже я приведу вам пошаговое руководство по наиболее быстрому способу обновления языка R до наиболее актуальной версии.

Для тех, кому лень читать текст вот небольшой видео мануал:

Видео мануал о том как обновить язык R

Все описанные ниже действия рекомендуется выполнять в интерфейсе RGui, а не в привычной для многих среде разработки RStudio.

Обычно, на windows ярлык RGui находится по адресу C:\Program Files\R\R-3.5.1\bin\x64\Rgui.exe

Для начала необходимо установить пакет с помощью стандартной команды install.packages("installr").

Далее подключаем пакет library(installr)и запускаем команду updateR().

После чего появится диалоговое окно, в котором будет выведена информация о вашей текущей, и наиболее актуальной версии языка R.

Диалоговое окно отображающее версию R

Жмём OK, и видим следующее диалоговое окно.

Хотите ли вы прочитать файл новостей новой версии R.

На самом деле неважно, что вы ответите, после чего откроется следующее окно, в котором вас спрашивают установить последнюю версию R?

Вы хотите установить последнюю версию R?

Жмём «Да».

Прогрессбар процесса скачивания версии R.

Далее начнётся обычный процесс установки R.

Процесс установки R

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

Вы хотите скопировать ваше пакеты из более старой версии R в новую?

Жмём да. После чего вам будет задан вопрос «Сейчас ваши пакеты будут скопированы из старой версии R в новую, хотите ли вы сохранить их в старой версии языка R, если нажмёте нет все пакеты будут удалены из предыдущей версии R.».

Я рекомендую оставлять пакеты и нажимать в ответ «Да», т.к. не всегда все ваши пакеты успешно переходят из одной версии в другую.

Идём дальше, и отвечаем на следующий вопрос, «Хотите ли скопировать файл Rprofile.site из предыдущей версии R». Данный файл содержит некоторые переменные языка R, лучше ответить «Да».

И последний вопрос, хотите ли вы обновить все перенесённые из предыдущей версии R пакеты, лучше ответить «Да».

После обновления пакетов вам будет предложено перезапустить RGui для запуска новой версии R.

Вы хотите перезапустить RGui с наиболее актуальной версией R

Жмём «Да», и в приветственном сообщении видим информацию о том, что мы работаем в последней версии языка R.

На этом процесс обновления завершен. Но не смотря на то, что пакет installr перенесёт все установленные пакеты из предыдущей версии, всё же иногда возникают проблемы с переносом некоторых зависимых пакетов, поэтому всё таки я крайне рекомендую после обновления ядра R проверить работоспособность всех основных скриптов, хотя бы на уровне подключения библиотек.

Решение проблем которые могут возникнуть после обновления

Если у вас после обновление возникают проблемы с установкой новых пакетов, то стоит прочесть статью «Ошибка при установке R пакетов на Windows«.

Если вы сделали всё как в видео, но при этом пакеты небыли скопированы, просто найдите папку R/win-library, как правило, она располагается в папке документов по следующему пути — C:\Users\UserName\Documents\R\win-library\3.X, где вместо X предыдущая версия R, которая была у вас установлена, а вместо UserName ваше имя пользователя операционной системе. И переименуйте папку 3.X в 4.0.

После чего на всякий случай запустите R в режиме администратора и используйте команду update.packages(checkBuilt=TRUE, ask=FALSE) для пересборки пакетов.

Напоминаю, что обо всех новостях языка R, и многих его пакетов удобно следить подписавшись на мой телеграм канал R4marketing.

Поделиться ссылкой:

Понравилось это:

Нравится Загрузка…

Похожее

packager — это … Что такое packager?

  • упаковщик — pack‧ag‧er [ˈpækɪdʒə ǁ ər] имя существительное [исчисляемо] 1. ТРАНСПОРТИРОВКА компания, которая готовит товары к отправке путем их упаковки или упаковки: • В ноябре компания приобрела Jimbo s Jumbos Inc. ., переработчик и упаковщик арахиса. • Производители… Финансовые и коммерческие условия

  • Packager — может относиться к: * Software packager, программный инструмент для создания установщиков * Packager (производство), включает продукты для распространения, хранения, продажи и использования… Wikipedia

  • packager — упаковка [paka (d) ʒ; пакɛдо] сущ.м. • 1968 г .; mot angl. (XVIe), de to pack «emballer» ♦ Anglic. 1 ♦ Информ. Ансамбль совместных программ и коммерческой документации (⇒ progiciel). 2 ♦ Public. Ens… Encyclopédie Universelle

  • упаковщик — / pak euh jeuhr /, n. 1. физическое или юридическое лицо, которое упаковывает продукт или товары для коммерческой продажи: упаковщик мыла. 2. физическое или юридическое лицо, которое создает и собирает тур, телешоу, книгу или другой продукт и предлагает их для продажи,…… Universalium

  • packager — упаковка ► СУЩЕСТВИТЕЛЬНОЕ 1) объект или группа объектов, завернутые в бумагу или упакованные в коробку.2) Н. Амер. пакет. 3) (также пакетная сделка) совокупность предложений или условий, предложенных или согласованных в целом. 4) неофициальный пакетный отдых. 5) Вычисление коллекции…… Словарь терминов английского языка

  • packager — ˈpakijə (r), kēj имя существительное 1. a. : тот, который упаковывает b. : оператор станка, который разрезает несколько кусков пиломатериалов одинаковой длины за одно и то же время 2.: предприниматель готовых выставок для продажи спонсорам или сетям… Полезный английский словарь

  • packager — существительное см. Пакет II… New Collegiate Dictionary

  • упаковщик — существительное а) Человек, который упаковывает.б) Инструмент или машина, используемые для упаковки объектов… Викисловарь

  • упаковщик — ● ►en n. м. ►METIER Personne réalisant des paquetages… Dictionnaire d’informatique francophone

  • упаковщик — н. тот, кто или тот, который упаковывает; кто-то или что-то, что складывает вещи в связки … Современный английский словарь

  • packager — pack · ag · er… английские слоги

  • .

    packager — это … Что такое packager?

  • упаковщик — pack‧ag‧er [ˈpækɪdʒə ǁ ər] имя существительное [исчисляемо] 1. ТРАНСПОРТИРОВКА компания, которая готовит товары к отправке путем их упаковки или упаковки: • В ноябре компания приобрела Jimbo s Jumbos Inc. ., переработчик и упаковщик арахиса. • Производители… Финансовые и коммерческие условия

  • Packager — может относиться к: * Software packager, программный инструмент для создания установщиков * Packager (производство), включает продукты для распространения, хранения, продажи и использования… Wikipedia

  • packager — упаковка [paka (d) ʒ; пакɛдо] сущ.м. • 1968 г .; mot angl. (XVIe), de to pack «emballer» ♦ Anglic. 1 ♦ Информ. Ансамбль совместных программ и коммерческой документации (⇒ progiciel). 2 ♦ Public. Ens… Encyclopédie Universelle

  • упаковщик — / pak euh jeuhr /, n. 1. физическое или юридическое лицо, которое упаковывает продукт или товары для коммерческой продажи: упаковщик мыла. 2. физическое или юридическое лицо, которое создает и собирает тур, телешоу, книгу или другой продукт и предлагает их для продажи,…… Universalium

  • packager — упаковка ► СУЩЕСТВИТЕЛЬНОЕ 1) объект или группа объектов, завернутые в бумагу или упакованные в коробку.2) Н. Амер. пакет. 3) (также пакетная сделка) совокупность предложений или условий, предложенных или согласованных в целом. 4) неофициальный пакетный отдых. 5) Вычисление коллекции…… Словарь терминов английского языка

  • packager — ˈpakijə (r), kēj имя существительное 1. a. : тот, который упаковывает b. : оператор станка, который разрезает несколько кусков пиломатериалов одинаковой длины за одно и то же время 2.: предприниматель готовых выставок для продажи спонсорам или сетям… Полезный английский словарь

  • packager — существительное см. Пакет II… New Collegiate Dictionary

  • упаковщик — существительное а) Человек, который упаковывает.б) Инструмент или машина, используемые для упаковки объектов… Викисловарь

  • упаковщик — ● ►en n. м. ►METIER Personne réalisant des paquetages… Dictionnaire d’informatique francophone

  • упаковщик — н. тот, кто или тот, который упаковывает; кто-то или что-то, что складывает вещи в связки … Современный английский словарь

  • packager — pack · ag · er… английские слоги

  • .

    packager — это … Что такое packager?

  • упаковщик — pack‧ag‧er [ˈpækɪdʒə ǁ ər] имя существительное [исчисляемо] 1. ТРАНСПОРТИРОВКА компания, которая готовит товары к отправке путем их упаковки или упаковки: • В ноябре компания приобрела Jimbo s Jumbos Inc. ., переработчик и упаковщик арахиса. • Производители… Финансовые и коммерческие условия

  • Packager — может относиться к: * Software packager, программный инструмент для создания установщиков * Packager (производство), включает продукты для распространения, хранения, продажи и использования… Wikipedia

  • packager — упаковка [paka (d) ʒ; пакɛдо] сущ.м. • 1968 г .; mot angl. (XVIe), de to pack «emballer» ♦ Anglic. 1 ♦ Информ. Ансамбль совместных программ и коммерческой документации (⇒ progiciel). 2 ♦ Public. Ens… Encyclopédie Universelle

  • упаковщик — / pak euh jeuhr /, n. 1. физическое или юридическое лицо, которое упаковывает продукт или товары для коммерческой продажи: упаковщик мыла. 2. физическое или юридическое лицо, которое создает и собирает тур, телешоу, книгу или другой продукт и предлагает их для продажи,…… Universalium

  • packager — упаковка ► СУЩЕСТВИТЕЛЬНОЕ 1) объект или группа объектов, завернутые в бумагу или упакованные в коробку.2) Н. Амер. пакет. 3) (также пакетная сделка) совокупность предложений или условий, предложенных или согласованных в целом. 4) неофициальный пакетный отдых. 5) Вычисление коллекции…… Словарь терминов английского языка

  • packager — ˈpakijə (r), kēj имя существительное 1. a. : тот, который упаковывает b. : оператор станка, который разрезает несколько кусков пиломатериалов одинаковой длины за одно и то же время 2.: предприниматель готовых выставок для продажи спонсорам или сетям… Полезный английский словарь

  • packager — существительное см. Пакет II… New Collegiate Dictionary

  • упаковщик — существительное а) Человек, который упаковывает.б) Инструмент или машина, используемые для упаковки объектов… Викисловарь

  • упаковщик — ● ►en n. м. ►METIER Personne réalisant des paquetages… Dictionnaire d’informatique francophone

  • упаковщик — н. тот, кто или тот, который упаковывает; кто-то или что-то, что складывает вещи в связки … Современный английский словарь

  • packager — pack · ag · er… английские слоги

  • .

    packager — это … Что такое packager?

  • упаковщик — pack‧ag‧er [ˈpækɪdʒə ǁ ər] имя существительное [исчисляемо] 1. ТРАНСПОРТИРОВКА компания, которая готовит товары к отправке путем их упаковки или упаковки: • В ноябре компания приобрела Jimbo s Jumbos Inc. ., переработчик и упаковщик арахиса. • Производители… Финансовые и коммерческие условия

  • Packager — может относиться к: * Software packager, программный инструмент для создания установщиков * Packager (производство), включает продукты для распространения, хранения, продажи и использования… Wikipedia

  • packager — упаковка [paka (d) ʒ; пакɛдо] сущ.м. • 1968 г .; mot angl. (XVIe), de to pack «emballer» ♦ Anglic. 1 ♦ Информ. Ансамбль совместных программ и коммерческой документации (⇒ progiciel). 2 ♦ Public. Ens… Encyclopédie Universelle

  • упаковщик — / pak euh jeuhr /, n. 1. физическое или юридическое лицо, которое упаковывает продукт или товары для коммерческой продажи: упаковщик мыла. 2. физическое или юридическое лицо, которое создает и собирает тур, телешоу, книгу или другой продукт и предлагает их для продажи,…… Universalium

  • packager — упаковка ► СУЩЕСТВИТЕЛЬНОЕ 1) объект или группа объектов, завернутые в бумагу или упакованные в коробку.2) Н. Амер. пакет. 3) (также пакетная сделка) совокупность предложений или условий, предложенных или согласованных в целом. 4) неофициальный пакетный отдых. 5) Вычисление коллекции…… Словарь терминов английского языка

  • packager — ˈpakijə (r), kēj имя существительное 1. a. : тот, который упаковывает b. : оператор станка, который разрезает несколько кусков пиломатериалов одинаковой длины за одно и то же время 2.: предприниматель готовых выставок для продажи спонсорам или сетям… Полезный английский словарь

  • packager — существительное см. Пакет II… New Collegiate Dictionary

  • упаковщик — существительное а) Человек, который упаковывает.б) Инструмент или машина, используемые для упаковки объектов… Викисловарь

  • упаковщик — ● ►en n. м. ►METIER Personne réalisant des paquetages… Dictionnaire d’informatique francophone

  • упаковщик — н. тот, кто или тот, который упаковывает; кто-то или что-то, что складывает вещи в связки … Современный английский словарь

  • packager — pack · ag · er… английские слоги

  • .

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *