Неоднородные данные в R

Опубликовано: 2 Сентября, 2022

Структуры данных являются логическим способом или представляются в соответствии с требованиями. Кроме того, они помогают физически отобразить это логическое представление в памяти компьютера. В языке R структуры данных можно разделить на две группы: гомогенные и гетерогенные.

  • Однородные структуры данных: этот тип может хранить внутри себя только один тип данных (целое число, символ и т. д.),
  • Гетерогенные структуры данных: этот тип может хранить более одного типа данных одновременно.

Гетерогенные структуры данных

R поддерживает два способа представления разнородных данных, а именно списки и фреймы данных. Обе структуры подробно обсуждаются ниже:

1) Списки:

  • Списки — это одномерные гетерогенные типы данных.
  • Список может представлять более одного типа данных одновременно.
  • Мы можем просто использовать функцию list() для создания списка.
  • Списки похожи на векторы, однако векторы однородны, а списки разнородны.
  • Другое интересное свойство списков заключается в том, что мы можем хранить списки внутри других списков (например, простая рекурсия). По этой причине списки также называют « рекурсивными векторами ».

Пример:

R




list_ex = list(Ch="R language", numbers = 5:1, fl=FALSE)
  
print(list_ex)

Выход:

$Ch

[1] “R language”

$numbers

[1]  5 4 3 2 1

$fl

[1] FALSE

Пример: рекурсивные векторы

R




list_ex2<-list(list(1,"R language",FALSE), list("Python",2,"Language"),
               list("Hello",FALSE,"World"))
  
str(list_ex2)

Выход:

List of 3

$ :List of 3

 ..$ : num 1

 ..$ : chr “R language”

 ..$ : logi FALSE

$ :List of 3

 ..$ : chr “Python” 

 ..$ : num 2

 ..$ : chr “Language”

$ :List of 3

 ..$ : chr “Hello”

 ..$ : logi FALSE

 ..$ : chr “World”          

2) Кадры данных:

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

Пример:

R




employee_id <- c(1:4)
  
employee_name <- c("Abdul", "Anshul", "Vishal", "Riya")
employee_salary <- c("45000", "90000", "25000", "75000")
employee_designation <- c("Software Engineer", "Senior Manager", "Intern","Manager")
  
employee.data <- data.frame(employee_id , employee_name, employee_salary,
                            employee_designation)
  
employee.data

Выход: