Вещи, которые я считаю очень полезными для работы и жизни

Вопрос о том, лучше ли Python или R для науки о данных / машинного обучения, остается открытым. Несмотря на свою причудливость и не совсем правдивую, но обычно воспринимаемую медлительность, R действительно выделяется в исследовательском анализе данных (EDA) с точки зрения обработки данных, визуализаций, информационных панелей, множества вариантов статистических пакетов (и ошибок) - так что Я всегда считал полезным двойное владение R и Python, особенно с улучшенной совместимостью с использованием reticulate и rpy. Я провел большую часть последних нескольких месяцев, работая с R, в то время как мои навыки работы с Python, Java и javascript стали бездействовать. Обзор задач CRAN - отличная отправная точка для поиска пакетов R, но я думаю, что список пакетов, которые я использовал в последние несколько лет, может принести пользу сообществу. Для меня также хорошая мотивация задокументировать некоторые прошлые уроки. Итак, вот оно - и я постараюсь внести обновления. Он довольно длинный, поэтому, вероятно, лучше сначала попробовать те, которые имеют отношение к вашей теме, прежде чем все устанавливать грубой силой. Тем не менее, есть наблюдение, что люди, которые покупают много книг, почти не читают ни одной из них.

Итак, без лишних слов:

Преодоление данных

  • tidyverse: я считаю, что сейчас это должно быть в комплекте с R. На самом деле, если вы не используете его для обработки данных, вы, вероятно, делаете что-то не так (или вы супер старая школа). Он поставляется с набором богатых инструментов, таких как dplyr (преобразование, фильтр, агрегирование), tidyr (преобразование длинных / широких таблиц), purrr (пакет функционального программирования), tibble (расширенные фреймы данных) и т. Д.
  • janitor: отличный инструмент для очистки данных, прекрасно работает с tidyverse.
  • seplyr: удобный сопутствующий пакет для dplyr, добавляющий некоторые ярлыки, такие как функции сводки групп. Вы всегда можете реализовать себя, но вот выбор ленивца.
  • структуры данных: в R отсутствуют стандартные структуры данных, такие как hashset и hashmap. Будьте уверены, для этого всегда есть посылка.

Визуализация

  • ggplot2: пакет для построения графиков, который вы должны использовать, точка. Python также имеет сюжетную привязку. Иногда вы можете спросить себя, зачем вам нужно 10 строк кода для создания линейного графика, тогда как вы можете просто открыть файл в Excel и создать его, в других случаях вы будете благодарны за то, что можете сочинить что угодно, не ударившись головой об экран. Кривая обучения определенно будет крутой, если вы новичок, но оно того стоит.
  • DataExplorer: простой в использовании пакет для создания графиков ggplot-verse диагностики данных, таких как отсутствующие данные / функция и т. Д. Я использую некоторые функции быстрого доступа для быстрой проверки данных.
  • ggrepel: это прямая замена для geom_text, если у вас большое количество ярлыков и вы не хотите, чтобы все тексты перекрывались. Запуск для больших наборов данных может занять много времени, но результаты будут намного приятнее визуально.
  • ggfortify: графики диагностики / визуализации для различных статистических моделей.
  • sjPlot: поставляется с множеством изящных диагностических графиков для статистического моделирования. Мне особенно нравится, что он построен на ggplot, так что вы можете легко настроить внешний вид, чтобы он соответствовал другим сюжетам ggplot-verse. Jtools / interplot содержит несколько хороших функций для построения эффектов взаимодействия. Ggdistribute содержит функции для построения апостериорных распределений.
  • coefplot: автоматическое построение коэффициентов модели с доверительными интервалами.
  • dotwhisker: еще один замечательный пакет построения коэффициентов с ggplot2.
  • gghighlight: очень полезно, если у вас несколько временных рядов и вы хотите выделить несколько, а остальные оставить в фоновом режиме.
  • lvplot: улучшенный график, который работает аналогично блочному графику, но лучше работает с выбросами и большими наборами данных.
  • Звездочет: создает таблицы html / latex из фреймов данных, которые можно вставлять в рукописи. Я использую это для создания таблиц для документов Google всякий раз, когда хочу, чтобы стиль таблицы был более классическим. В противном случае я использую sjPlot. Также есть gt.
  • ggthemes, ggsci, ggpubr, ggalt, hrbrthemes: готовые темы для публикации и цветные шаблоны для различных журналов. Вы даже можете получить сюжеты в стиле xkcd. extrafont позволяет использовать пользовательские шрифты в графиках.
  • Вафля. Инфографика - не всегда лучший вариант для представления данных, но может быть полезна для аудитории, менее разбирающейся в данных / технологиях. Вот запись в блоге с некоторыми примерами.
  • corrplot: универсальный инструмент для построения различных корреляций в различных представлениях.
  • alluvial, ggalluvial, riverplot: пакеты ggplot для создания блок-схем Санки. Иногда они полезны для визуализации сложных потоков, предполагая, что ваши потоки не будут переплетаться, как лапша.
  • pheatmap, ggdendro: Пакет для построения тепловых карт.
  • решетка, plotrix, gplots, plotly: различные функции построения графиков, которых нет во вселенной ggplot.
  • ggmap, mapview, листовка, sp: пакеты для создания функций геопространственной визуализации.
  • patchwork, gridExtra: эти пакеты хорошо подходят для объединения нескольких ggplots вместе. Лично я предпочитаю лоскутное шитье, так как синтаксис более естественный и грубоватый.
  • classifierplots: содержит различные аккуратные диагностические диаграммы для классификаторов.
  • ggstatsplot: новый пакет для автоматических статистических графиков.
  • inspectdf: очень удобная функция для исследования категориальных переменных.
  • эффекты: действительно хороший пакет для иллюстрации эффектов модели.
  • radarBoxplot: эта библиотека графиков генерирует график, типизированный для радара (похожий на игровую статистику, и может быть полезен для сравнения многовариантных данных).
  • prettyB: более красивые пакеты базовых чертежей, простая замена.
  • ggPMX: инструменты на основе ggplot для упрощения диагностических графиков для моделей NLME.
  • ggchicklet: Интересный и полезный пакет для горизонтальных столбиков.
  • ggpointde density: график плотности + график рассеяния
  • WVPlots: некоторые часто используемые графики ggplots.

Обработка естественного языка

  • formattable: пакет, предоставляющий хороший набор функций для облегчения форматирования, такого как числа, проценты и т. Д.
  • scale: новый пакет R для помощи / улучшения масштабирования ggplot, который может быть довольно утомительным и утомительным для настройки. Я полагаюсь на эту библиотеку для генерации отметок шкалы журнала (ссылка на пример).
  • stringr, stringi: хороший набор функций для работы со строками. Обработка строк в R обычно неприятна, и это хорошо помогает.
  • RKEA: интерфейс R для KEA (извлечение ключевых фраз), это хорошая партнерская библиотека для других более всеобъемлющих пакетов НЛП, таких как тематические модели.
  • udpipe: обучаемые конвейеры токенизации.
  • stringdist, fuzzywuzzyR: функции нечеткого / приблизительного сопоставления строк и расстояния до строк.
  • fuzzyjoin: интересная концепция - это расширение методов соединения dply для добавления функций нечетких соединений для таблиц. Может быть удобно, но используйте его с осторожностью, поскольку поведение может быть непредсказуемым.
  • topicmodels: эффективный пакет моделирования тем.
  • formatR: может использоваться для пакетного форматирования нескольких исходных кодов R, если вы не используете IDE со встроенной функцией автоформатирования.
  • lintr: линтинг кода для исходных кодов R.
  • SentimentAnalysis: этот пакет похож на пакет Python Vader, если вы хотите провести быстрый анализ настроений с помощью нескольких методов.

Статистическое обучение

  • modelr: усовершенствованный интерфейс моделирования для нормализации нескольких часто используемых структур моделирования.
  • broom: очень удобный пакет для преобразования объектов моделирования в более удобные фреймы данных для пакетной отчетности, сохранения или визуализации.
  • fmsb, Mcomp: это дополнительный пакет к книге Практика анализа медицинских данных и данных о состоянии здоровья с использованием R. Книге около 10 лет, но некоторые данные полезны для опробования различных статистических методов / методов машинного обучения. Mcomp содержит некоторые данные временных рядов, с которыми можно поиграть.
  • Hmisc, rcompanion, e1071: Отличные пакеты утилит для различного статистического анализа, такого как расчет размера выборки / мощности, вычисление псевдо-R², различных статистических тестов и т. д.
  • vegan: статистические методы для экологов.
  • fit.models: этот пакет похож на caret тем, что стандартизирует интерфейс для подгонки и сравнения различных параметрических / непараметрических моделей.
  • OEM: пакет, разработанный специально для решения проблем регрессии с большими объемными данными (маленький p, очень большой N, например, kaggle Talking Data).
  • BeSS: алгоритм выбора наиболее подходящего подмножества, может использоваться вместе со стандартными процедурами выбора модели на основе AIC / BIC.
  • Quantreg: пакет с функциями квантильной регрессии.
  • лаваан: анализ скрытых переменных и моделирование структурных уравнений [ссылка].
  • lme4: этот пакет отлично подходит для подбора линейных и обобщенных моделей со смешанными эффектами.
  • подъем: моделирование повышения для оптимизации рентабельности инвестиций конкретного лечения, но с выявлением наилучшего подмножества целей [ссылка].
  • рука: компаньон к книге Анализ данных с использованием регрессии и многоуровневых / иерархических моделей. Содержит удобные методы иерархического моделирования.
  • сглаживание: сглаживание кривой и прогнозирование временных рядов.
  • extRemes: пакет для статистики экстремальных / длинных хвостовых значений, lax: корректировка логарифмической вероятности для моделей экстремальных значений.
  • MixtureInf: методы оценки максимального правдоподобия (MLE).
  • SGB: симплициальная обобщенная бета-регрессия
  • PLNModels: Логноармальные модели Пуассона.
  • multinomineq: байесовский вывод для полиномиальных моделей с ограничениями неравенства
  • rms: это дополнительный пакет к книге Стратегии регрессионного моделирования, предлагающий множество методов регрессионного анализа.
  • emmeans: наименьшее квадратическое маргинальное значение.
  • cotram: модели преобразования счета.
  • easystats: библиотеки упрощают статистический анализ.
  • параметры: пакет, который упрощает извлечение параметров.

Случайный вывод

  • MatchIt: отличный пакет для оценки соответствия. У него есть некоторые особенности, и извлечение данных из результатов может быть не очень интуитивно понятным.
  • CausalImpact: пакет Google для быстрой оценки. Обычно это моя первая попытка проанализировать любой анализ причинно-следственных связей.
  • причинный эффект: случайные выводы. Я не проверял подробно этот пакет, и он выглядит очень многообещающим.
  • CompareCausalNetworks: это опора для причинных сетей, унифицированный интерфейс для подключения ко многим структурам причинно-следственных сетей.
  • rdd: этот пакет содержит все необходимое для анализа разрывов регрессии.
  • mediation: пакет, разработанный для причинно-следственного анализа. У Uber есть отличный блог, посвященный подобному анализу [ссылка]. Эта структура позволяет оценить средний эффект лечения без присутствия предлагаемого посредника.

Мета-анализ

  • мета, метафор: стартовые пакеты для базового мета-анализа, такого как подгонка моделей фиксированных / случайных эффектов для двоичных / непрерывных результатов.
  • forestmodel, metaviz: встроенные функции построения лесов для meta / metafor еще не были обновлены до ggplot universe. Эти пакеты делают фейслифтинг, и результирующие графики могут быть обновлены с помощью функций ggplot, таких как изменение заголовков, сшивание с другими графиками и т. Д. Я написал еще более совершенные функции лесных графиков, которыми я поделюсь в другом сообщении в блоге.
  • vcov: более быстрые методы извлечения матриц дисперсии - ковариации. Это можно использовать во многих контекстах, но может быть удобно для многомерного мета-анализа.
  • bayesmeta, CPBayes, bmeta: наверняка найдутся байесовские аналоги для метаанализа. Я не проверял их подробно, но, вероятно, сделаю больше, когда углублюсь в байесовский вывод.
  • netmeta: пакет для метаанализа сети. Сетевой мета-анализ - это методология объединения нескольких исследований и вывода результатов лечения между группами, которые никогда не сравнивались напрямую.
  • baggr: иерархический байесовский мета-анализ со станом (можно выбрать отсутствие, частичное или полное объединение)

Проверка гипотезы

  • diptest: испытание погружением мультимодальности / распределения смеси.
  • normtest: содержит множество удобных тестов нормальности, асимметрии, эксцесса и т. д. с использованием моделирования Монте-Карло, хорошее дополнение к base :: shapiro.test: Шапиро -Тест Вилка на нормальность.
  • seqtest, SPRT, ldbounds, gsDesign: это пакеты для последовательного тестирования - вычисления границ с различными методами. Я планирую написать подробный блог об этой предметной области.
  • lmtest: проверка гипотез для моделей линейной регрессии.
  • mhtboot: исправление множественных гипотез.
  • wBoot: методы начальной загрузки как альтернатива проверке гипотез.
  • монета: среда тестирования перестановок.
  • повторная выборка: методы повторной выборки, которые можно использовать вместе со многими системами проверки гипотез.
  • binom: укажите дополнительные биномиальные доверительные интервалы, поскольку стандартная оценка может не работать для редких событий, неоднородных p и т. Д.
  • DescTools: инструменты для ленивых для описательной статистики.
  • толерантность: если подумать о проверке гипотез по-другому - с учетом альфа и процента восстановления, каковы нижняя и верхняя границы данных, которые мы можем восстановить из определенного распределения вероятностей? Этот пакет подходит для всех распространенных дистрибутивов.
  • BSDA: приложение к книге Базовая статистика и анализ данных, содержит множество интересных наборов данных и вспомогательные функции проверки гипотез (например, вычисление z-критерия на основе сводной статистики по сравнению с необработанными данными, хотя накатить самостоятельно довольно легко).
  • WRS2: набор надежных методов статистического моделирования / тестирования;
  • bayesAB: пакет для проверки байесовских гипотез, который вы хотите использовать. Отличный пакет, разработанный Фрэнком Портманом.
  • rstanarm: Байесовское прикладное регрессионное моделирование - может использоваться для проверки байесовских гипотез в рамках моделирования.
  • hotelling: пакет для теста Hotelling T².
  • BayesFactor: вычисление байесовского фактора для стандартных планов экспериментов.
  • infer: пакет вывода Tidyverse.
  • pvaluefunctions: создает доверительные распределения и функции p-значения.
  • Monte.Carlo.se: стандартные ошибки Монте-Карло.
  • bamlss: байесовские аддитивные модели или расположение, масштаб и форма.
  • BayesPostEst: байесовские величины после оценки байесовских регрессионных моделей с помощью MCMC.

Анализ мощности

  • pwr: основные функции для анализа мощности. Вычислить любой из трех других параметров: размер выборки, мощность, размер эффекта, альфа.
  • samples: аналогично pwr, но может также вычислять размер выборки для непараметрического критерия Вилкоксона.
  • powerAnalysis: старый пакет также подходит.
  • simr: использование подхода, основанного на моделировании, для анализа мощности.
  • effsize, compute.es: очень удобные пакеты для вычисления различных мер величины эффекта (Cohen d и т. д.).

Факторный / Обзорный анализ

  • Обзор: название говорит само за себя.
  • SDaA: выборка, разработка и анализ
  • FactoMineR: многомерный факторный анализ с анализом множественных соответствий (MCA)
  • ade4: Анализ экологических данных / науки об окружающей среде с методами обследования.
  • Ca, homals: различные методы анализа соответствий.

Анализ временных рядов

  • jmotif: предоставляет полный набор функций символьного преобразования, таких как SAX (Символьное приближение агрегирования) для преобразования данных непрерывных временных рядов в дискретные последовательности строк, которые затем могут быть переданы в различные особенности инженерных функций
  • seewave: пакет для анализа звука, также предлагает преобразования SAX.
  • пророк: пакет Facebook для анализа временных рядов, включая прогнозирование и обнаружение точек изменения. Также поставляется на Python.
  • imputeTS: методы вменения, разработанные специально для данных временных рядов.
  • anytime, timeDate, lubridate, hms: все мы знаем, что преобразование формата времени - универсальная проблема. Эти пакеты нужны вам на помощь.
  • fma: наборы данных временных рядов, с которыми вы можете играть.
  • timereg: модели регрессии для данных выживания / временных рядов.
  • прогноз: функции прогнозирования для ц / линейных моделей.
  • TSA: общий анализ временных рядов к книге Анализ временных рядов с приложениями в R
  • astsa: прикладной статистический анализ временных рядов.
  • spetral. методы: спектральное разложение данных временных рядов.
  • pracma: практические числовые математические функции.
  • changepoint, cpm: методы обнаружения точки изменения / аномалии.
  • bcp, ecp: байесовские / непараметрические методы для обнаружения точки изменения.
  • TSClust, dtwclust: специальные методы, разработанные для кластеризации данных временных рядов.
  • anomalize: автоматическое обнаружение аномалий в данных таймсерий.

Анализ выживаемости

  • Выживание: набор инструментов для анализа выживаемости. Содержит все необходимое для начала, например модели Cox Hazard.

Надежная статистика

  • надежная, надежная база: надежные методы для преодоления одномерных / многомерных выбросов и создания более стабильных моделей / оценок.

Обнаружение аномалий

  • twitter / AnomalyDetection: этот пакет не обновлялся годами, но, похоже, все еще работает. Буду рад рекомендациям по методам обнаружения аномалий.

Разработка / выбор функций

  • forcats: инструменты для преобразования категориальных переменных.
  • Борута: метод выбора характеристик, основанный на перестановке мер важности.
  • MXM: методы выбора функций с байесовскими сетями.
  • fscaret: автоматический выбор функции с помощью курсора.
  • EFS: выбор функций с использованием ансамблевых методов.
  • one_hot, onehot: удобные ярлыки для однократного кодирования категориальных переменных.
  • SelectBoost: выберите усиление для выбора функции.
  • фонарик: пакет по исследованию возможностей алгоритма blackboxy.

Метрики расстояния

  • прокси: дистанционные функции могут быть разбросаны по множеству пакетов R с различными сигнатурами функций, что затрудняет горячую замену. Этот пакет нормализует определения расстояния и делает его удобным для определения любой пользовательской функции расстояния.
  • parallelDist: вычисление матрицы расстояний для очень больших наборов данных (›5000 строк) может занять очень много времени на локальном компьютере; Этот пакет позволяет вычислять расстояния параллельно, что может значительно сократить время вычислений, протестированное до 20-кратного увеличения скорости.
  • филентропия: расстояния подобия между функциями вероятности.
  • wCorr, веса: взвешенная статистика, например корреляции.
  • расстояния: различные показатели расстояния, которые можно использовать для моделирования машинного обучения / статистики.
  • gower: расстояние Гауэра между записями, часто используется при анализе опросов со смешанными числовыми / категориальными ответами.

Уменьшение размеров

  • Рцне, цне: реализация Т-сне в R.
  • gmodels: fast.prcomp: быстрая версия PCA.
  • umap: с учебником здесь, методология уменьшения размеров.
  • smacof: комплексный пакет для многомерного масштабирования, как хорошее дополнение к MASS :: isoMDS.
  • largeViz: визуализация больших данных с уменьшением размеров.
  • RDRToolbox: уменьшение размеров с помощью isomap и LLE с единой структурой.

Неконтролируемое обучение / кластеризация

  • mclust: подход к кластеризации на основе модели с использованием гауссовских смесей. Он автоматически определяет оптимальное количество кластеров на основе максимального правдоподобия. Вот руководство для начинающих.
  • fastcluster: простой способ заменить встроенную иерархическую кластеризацию с огромным повышением производительности. Кластеризация тысяч точек данных занимает менее пары секунд.
  • flashClust: еще одна реализация быстрой иерархической кластеризации.
  • NMF: Пакет неотрицательной матричной факторизации. Это очень полезный метод для поиска сжатых версий матриц меньшего размера, которые можно умножать для аппроксимации исходной матрицы, сохраняя при этом все значения положительными (аддитивными). Часто используется при кластеризации / обработке изображений. [Nature Paper]
  • cluster, fpc, clue: набор методов для кластерного анализа и проверки.
  • pvclust: использование начальной загрузки для оценки неопределенности иерархической кластеризации и поиска оптимальных разрезов.
  • fastICA: быстрый метод независимого компонентного анализа (ICA). Хороший пост на Quora объясняет разницу между PCA и ICA.
  • EMCluster: кластеризация на основе модели с гауссовым распределением конечной смеси. Короче говоря, он предполагает, что данные были сгенерированы из многомерного распределения Гаусса, и пытается оценить оптимальное количество кластеров и членство в кластере с алгоритмом EM.
  • clues, clusterSim: методы автоматической кластеризации для определения количества кластеров с диаграммами диагностики.
  • RSKC: надежный алгоритм кластеризации K-средних для разреженных данных.
  • dendextend: расширенные методы рисования дендрограмм.
  • факт экстра
  • NbClust: действительно хороший пакет для определения оптимального количества кластеров - может предоставить ~ 30 метрик одновременно.
  • clValid: вычисление различных показателей качества кластера, таких как индекс Данна.
  • clustertend: склонность Хопкина к кластерам - вы можете применить алгоритм кластеризации к любому набору данных, но это не означает, что результат значим. В частности, данные должны содержать какую-то структуру кластеризации, и индекс Хопкина является хорошей мерой для тестов на перестановку.
  • dbscan: методы кластеризации на основе плотности [wiki] могут помочь решить, когда традиционные методы, основанные на расстоянии, не работают.
  • cluMix: кластеризация предметов со смешанными типами данных, расстояния могут быть вычислены с использованием расстояния Гауэра. В качестве альтернативы вы можете использовать gower для вычисления расстояния, а затем использовать предпочтительные алгоритмы кластеризации.
  • apcluster: кластеризация распространения сходства - аналогично распространению метки, близость передается через сети подобия.
  • OTclust: среднее соотношение, оценка неопределенности и кластерная проверка
  • Спектр: алгоритм быстрой кластеризации спектра.

Полу-контролируемое обучение

  • SSL, RSSL: эти пакеты предоставляют полу-контролируемые методы обучения с использованием частично размеченных данных.

Обучение с учителем (общее машинное обучение) / Глубокое обучение

  • caret: R эквивалент scikit learn: обработка функций, разделение на обучение / тест, перекрестная проверка, показатели производительности модели… вы называете это.
  • mlbench: наборы данных и функции ML.
  • xgboost: всем известный алгоритм выигрыша Kaggle. Фактически, это почти универсальный выбор для высокопроизводительных моделей производственного уровня. Быстрый, простой в использовании, простой в развертывании.
  • modelr: инициатива по обеспечению большей совместимости синтаксиса моделирования с tidyverse.
  • рецепты: Вспомогательные пакеты для оформления матриц.
  • mlr: Подобно карету, это универсальный фреймворк для обучения модели.
  • h2o, mltools: распределенная среда машинного обучения с версией для сообщества и коммерческой версией, которая включает реализацию AutoML.
  • rstudio / keras: реализация Keras в R, переходите к глубокому обучению!
  • fastglm, speedglm: более быстрая версия библиотек GLM.
  • iml: интерпретируемое машинное обучение: Книга
  • tidymodels: tidymodels: набор пакетов машинного обучения / статистического моделирования в стиле tidyverse.
  • SHAPforxgboost: диагностика значений shap для xgboost

Классовый дисбаланс

  • smotefamily: синтетические методы передискретизации для решения проблем дисбаланса классов.
  • MatchIt: упомянутый в причинно-следственном выводе, я считаю, что этот пакет также достоин еще одной номинации здесь для создания выборок со сбалансированными ковариатами.
  • upclass: недавно заархивированный CRAN, это еще один пакет для синтеза сэмплов меньшинства.

Графический анализ

  • igraph: Самая полная библиотека графов для R - сводная статистика, расстояния, структура сообщества, кластеризация, алгоритмы компоновки визуализации - вы называете это! Должен иметь.
  • qgraph: содержит различные методы для графических данных, а именно.
  • сеть: сопутствующий пакет для igraph
  • tidygraph: пакет визуализации на основе tidyverse.
  • ggraph: сетевая визуализация на основе ggplot
  • visNetwork: способ визуализации сетей
  • networkD3: сети на основе D3

Оптимизация

  • BB: Решение больших систем линейных и нелинейных уравнений. Очень быстро и удобно.

Вменения

  • VIM: Визуализация и вменение пропущенных значений. Пакет швейцарского ножа.
  • мыши, Амелия: методы многомерного вменения. Идея состоит в том, чтобы заимствовать как можно больше данных соседа, чтобы повысить точность вменения.
  • missForest: один из подходов, основанных на модели - мы можем использовать отсутствующее значение в качестве переменной отклика и подогнать модель к остальным переменным и, следовательно, сделать вменения.
  • mi, mitools: некоторые старые пакеты для вменения пропущенных значений.

Симуляторы

  • randomizeR: рандомизация для клинических испытаний.
  • МонтеКарло: название объясняет это, пакет для моделирования МонтеКарло.

Биоинформатика

  • paircompviz: пакет биопроводников для визуализации множественных сравнений тестов.
  • msa: процедуры выравнивания множественных последовательностей для выравнивания последовательностей ДНК / РНК / белков. Матрица перехода может быть переопределена для данных с пользовательской последовательностью.
  • Biostrings: эффективная библиотека для биологических строк, ее можно расширить до пользовательских наборов символов.

Наборы данных

  • Пол: предположите пол по английским именам, производя вероятности
  • детские имена: детские имена в США за годы по данным переписи населения. Я использовал этот пакет, чтобы понять популярность меняющегося во времени имени, когда я пытался назвать свою дочь
  • gcookbook: этот пакет содержит данные для книги R Graphics Cookbook; Я нашел его полезным для тестирования инструментов визуализации, и в нем есть несколько полезных служебных функций. из коробки.
  • wbstats: эти пакеты предлагают программный доступ к данным Всемирного банка, таким как ВВП, доход, уровень преступности, образование, демография, с различной географической детализацией.
  • wdi: простые в использовании данные всемирного банка

Инструменты разработчика

  • wrapr: этот пакет можно использовать для отладки функций канала (% ›%).
  • проверка: этот пакет поставляется с богатым набором функций для проверки аргументов функций, может использоваться в серверной части веб-служб, таких как сантехник.

Панель управления / Интерактивная визуализация

  • R / Shiny: я не большой поклонник блестящего, но это удобная альтернатива Tableu для создания быстрых интерактивных панелей визуализации данных.
  • htmlwidgets: отличный помощник для shiny, предоставляющий множество интерактивных инструментов для визуализации табличных / временных рядов / геопространственных данных.
  • dygraphs: один из лучших пакетов для интерактивной визуализации данных временных рядов; вы можете строить несколько серий одновременно и украшать различные аннотации
  • DataTables (DT): простая оболочка для преобразования фрейма данных R в интерактивную таблицу данных с возможностями сортировки и фильтрации.
  • буклет: лучший пакет для визуализации геопространственных данных, хотя я обнаружил, что интеграция в блокнот Jupyter может быть довольно неуклюжей.
  • golem: надежный фреймворк для блестящих приложений.

Параллельные вычисления

  • foreach: возможно, гораздо более надежная версия циклов for, поддерживает несколько сред параллельной обработки с синтаксисом (% dopar%). Мне он показался менее производительным, чем mclapply from parallel, но мне нравится его обработка ошибок и гибкость.
  • mclapply: Моя функция Go-to теперь для распараллеливания одного блока, если вывод может быть сжат в список / массивы.
  • parallel, snow: в mclapply / foreach можно использовать различные параллельные серверные ВМ.

IO

  • readr: если вы все еще используете встроенный read.csv… не делайте этого. Этот пакет намного лучше и прост в использовании. Не могу жить без.
  • readxl: Даже у меня нет памяти о том, когда я последний раз работал с файлом Excel (теперь все в Google Таблицах), но знать, что есть способ читать прямо из Excel, - это здорово, особенно когда это файл содержит несколько листов.
  • jsonlite: объяснять не нужно, нужно как-то разобрать JSON.
  • xml2: хотя XML уходит в прошлое, знание того, что он все еще поддерживается, дает мне душевное спокойствие.
  • rDrop: удобно читать файл прямо из Dropbox.

Утилита / веб-служба

  • pryr: способы заглянуть под капот R возражений и функций.
  • devtools: инструменты разработчика, если вы занимаетесь разработкой R.
  • сантехник, httr: пакеты для настройки HTTP-сервисов и отправки HTTP-запросов.
  • клей: очень удобный инструмент для форматирования строки с несколькими переменными (эквивалент python string.format), я нашел его очень удобным для генерации SQL или отладки сообщений.
  • memo: отличная реализация кеша lru, отлично работает с http-сервисом, например сантехником.
  • reticulate: позволяет R иметь прямой доступ к библиотекам и объектам Python, если вы используете двойное оружие!
  • roxygen2: создание документов R из встроенных аннотаций.
  • testthat: пакет модульного тестирования для R
  • knitr, bookdown: создание отчетов в формате HTML из уценок R.
  • packrat: система управления зависимостями R.
  • IRdisplay: используется для отображения изображений / текста в Jupyter с ядром R.

Другие источники

  • Автоматический поисковый анализ данных: в этом репозитории на github перечислено множество инструментов для ускорения процесса исследования данных.