Эти объекты являются неотъемлемой частью набора инструментов любого программиста R - в этой статье мы рассмотрим их и изучим их свойства.

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

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

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

Давай узнаем их!

R Векторы

Если вы уже работали с R раньше, вы, вероятно, этого ожидали, верно? :-)

Самый простой объект R - это вектор. Этот одномерный объект одного типа является основой для множества других объектов языка программирования. Но пусть вас не обманывает его простота, это сверхмощный объект, способный выполнять множество задач в ваших скриптах. От подачи данных во фреймы данных или помощи в индексировании этот объект должен быть довольно простым в изучении и применении.

Существует несколько способов создания векторов, но самые известные из них - с помощью команды c () или с помощью команды :,, например:

# Vector with elements 1,2,3,4
c(1, 2, 3, 4)
# Vector with 10 elements, from 1 to 10
1:10

У них есть несколько свойств, которые отличают их от других объектов R:

  • Они поддерживают только 1 тип элемента. Если у вас есть символ в вашем векторе, такой как «A», все остальные элементы будут преобразованы в тип символа.
  • Они одномерны, что означает, что они не могут представлять данные, например, в виде таблицы.

Где можно узнать больше о векторах? Используйте следующие ресурсы:

Массивы

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

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

Кроме того, когда вы работаете с массивами, вы начинаете понимать, как можно управлять несколькими измерениями в R и экспериментировать с несколькими индексами, что чрезвычайно важно для доминирования в анализе данных и спорах. Низкая вероятность того, что вы будете работать с данными, имеющими более двух измерений (вероятно, вы будете работать с этим типом данных только в том случае, если вы какой-то тип инженера по машинному обучению и / или имеете какой-либо вариант использования, который должен работать с тензорами. ), но научиться работать с другими не 2D объектами точно не помешает. Характеристики массивов:

  • Они многомерны;
  • Они могут одновременно обрабатывать только один тип элементов.

Вы можете создать массив с помощью функции array () в R:

# Creating an array with 10 elements, with 2 rows, 5 columns and 2 different tables (3 Dimensions)
array(
 1:10,
 dim = c(2,5,2)
)

Где можно узнать больше о массивах R? Загляните в эти ресурсы:

Матрицы

Матрицы - это частные случаи массивов, которые имеют только 2 измерения и собственный конструктор. Хорошая часть состоит в том, что после того, как вы изучите массивы в R, вы готовы манипулировать матрицами!

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

  • У них всего два измерения.
  • Они могут одновременно обрабатывать только один тип элементов.

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

# Creating a matrix with two rows and 5 columns
matrix(
 data = 1:10,
 nrow = 2,
 ncol = 5
)

Некоторые ресурсы, чтобы узнать о матрицах:

Списки

В предыдущих объектах вы могли что-то заметить - ни один из них не может обрабатывать данные с несколькими типами (например, смешивание символов и числовых значений).

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

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

Например, внутри списка мы можем хранить строку, число и массив! Это чрезвычайно интересно, потому что теперь у нас есть объект, который является наивысшим инструментом гибкости, позволяющим нам хранить внутри него многомерные объекты.

Чтобы создать список, вы можете использовать команду list ():

# Creating an example list with a character, a number and an array
example_list <- list(
 my_char = ‘a’,
 my_number = 1,
 my_array = array(1:4, dim=c(2,2))
)

Некоторые ресурсы, чтобы узнать о списках:

Фреймы данных

А теперь один из самых известных R-объектов - Data Frame!

Фреймы данных - это святой Грааль для анализа данных, они используются в большом количестве проектов в области науки о данных. В R они действительно гибкие (круто то, что на самом деле они представляют собой список!) И отображают данные, аналогичные другим двумерным объектам.

С фреймами данных вы можете работать с данными аналогично тому, как вы работаете с таблицей данных в SQL или простой таблицей в файле Excel. Они ориентированы на строки и столбцы, а также могут иметь имена индексов.

Большинство руководств по R содержат примеры с фреймами данных. Они являются наиболее гибким и удобным объектом для использования, когда дело доходит до анализа данных на языке программирования. Да, и если вы их изучите, у вас будет преимущество, когда вы начнете кодировать на Python с помощью библиотеки Pandas - одной из самых известных библиотек для управления фреймами данных на другом языке!

Вы можете создать его с помощью команды data.frame ():

# Creating a data frame with two columns and two rows
example_df <- data.frame(
 name = c(‘John’,’Mary’),
 age = c(19,20)
)

Вы можете узнать больше о фреймах данных в следующих ресурсах:

И это все! Это 5 объектов, которые чрезвычайно важно понять, когда вы хотите освоить R. После знакомства с ними вы сможете понять более сложные структуры данных, даже те, которые созданы во внешних библиотеках, таких как tibble .

Как вы думаете, есть еще один объект, который следует включить в этот список? Напишите в комментариях ниже!

Я создал курс по изучению R с нуля на Udemy - курс рассчитан на новичков, содержит более 100 упражнений, и я хотел бы, чтобы вы были рядом!