Вступ до фреймів даних в R

Кадр даних - це двовимірна (двовимірна) структура, схожа на масив, в якій приймаються різні типи даних, такі як символи, числові тощо. Кадр даних - це підмножина списку, що має кожен компонент однакової довжини. В основному, кадр даних - це таблиця, в якій кожен стовпець містить значення однієї змінної, і кожен рядок містить по одному набору значень з кожного стовпця.

Є деякі характеристики фрейму даних.

  • Ім'я стовпця обов'язково
  • Назви рядків мають бути унікальними
  • Кількість елементів у кожному стовпчику має бути однаковим

Кроки для створення фреймів даних в R

Почнемо зі створення кадру даних, який пояснюється нижче,

Крок 1: Створіть рамку даних класу в школі.

Код:

tenthclass = data.frame(roll_number = c(1:5), Name = c("John", "Sam", "Casey", "Ronald", "Mathew"),
Marks = c(77, 87, 45, 68, 95), stringsAsFactors = FALSE)
print(tenthclass)

Коли ми запустимо цей код, ми отримаємо такий кадр даних, як цей.

Вихід:

Тут у нашому прикладі кадрів даних дуже мало, але в реальному житті, займаючись проблемою, ми маємо багато даних. Тож для розуміння структури даних ми передаємо функцію Str ().

Крок 2: Додаємо нижній рядок у наш код.

Код:

Str(tenthclass)

Коли ми запустимо весь код, ми отримаємо вихід.

Вихід:

Наведений вище результат означає, що ми маємо 5 спостережень за 3 змінними. Потім він пояснює тип даних кожної змінної. Як і в нашому прикладі, номер рулону є цілим числом, ім'я - символом, а позначки - пронумерованими.

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

Крок 3: Тепер ми будемо використовувати підсумок ()

Код:

summary(tenthclass)

Вихід:

Підсумок забезпечує краще розуміння наших даних. Це підкаже нам середній, четвертий, Макс і Мін. Ці речі допоможуть нам прийняти краще рішення.

Як витягнути дані з фреймів даних у R?

Тут ми продовжимо вищевказаний випадок. Припустимо, ми хочемо знати ім’я учня в десятому класі, просто ім'я. То як ми будемо видобувати?

Наш кадр даних виглядає приблизно так.

roll_number Іменні позначки

1 1 Іван 77

2 2 Сем 87

3 3 Кейсі 45

4 4 Рональд 68

5 5 Матвій 95

Щоб просто отримати ім'я як вихід, ми передамо наступний код.

Код:

onlyname = tenthclass$Name
print(onlyname)

Вихід:

Тут, якщо ми порушимо код, ми просто поставимо знак долара між назвою нашого кадру даних та назвою змінної, яку ми хочемо отримати як вихід.

Тепер розглянемо ситуацію, вчитель хоче знати все про ролик №2, як його звати і скільки він набрав.

Тут нам потрібно все про рулон №2, тому перейдемо до наведеного нижче коду.

Код:

result_rollnumber2 = tenthclass(c(2), c(1:3)) print(result_rollnumber2)

Вихід:

Розгорніть у фреймах даних

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

1. Додати рядок

У нас є два кадри даних. Один кадр даних належить до десятого розділу класу A, а інший фрейм даних належить до десятого розділу класу B. Тепер ці різні розділи об'єднуються в один клас.

Приклад №1: Клас 10 А

Код:

tenthclass_sectionA = data.frame(roll_number = c(1:5),
Name = c("John", "Sam", "Casey", "Ronald", "Mathew"),
Marks = c(77, 87, 45, 68, 95), stringsAsFactors = FALSE)
print(tenthclass_sectionA)

Вихід:

Приклад №2: Клас 10 Б

Код:

tenthclass_sectionB = data.frame(roll_number = c(6:10), Name = c("Ria", "Justin", "Bon", "Tim", "joe"),
Marks = c(68, 98, 54, 68, 42), stringsAsFactors = FALSE)
print(tenthclass_sectionB)

Вихід:

Приклад №3: функція rbind ()

Тепер ми повинні об'єднати ці обидва класи в єдиний клас. Тут ми будемо використовувати функцію rbind (). Єдине обмеження в додаванні нового рядка полягає в тому, що нам потрібно ввести нові рядки в тій же структурі, що і в існуючому кадрі даних.

Код:

new_tenthclass = rbind(tenthclass_sectionA, tenthclass_sectionB)
print(new_tenthclass)

Вихід:

2. Додати стовпчик

Тепер розглянемо випадок, коли нам потрібно додати реквізити групи крові кожного та кожного учня 10 класу. Ми додамо до нього новий стовпець та назвемо його як «Blood_group».

Наш кадр даних виглядає приблизно так.

Код:

tenthclass = data.frame(roll_number = c(1:5), Name = c("John", "Sam", "Casey", "Ronald", "Mathew"),
Marks = c(77, 87, 45, 68, 95), stringsAsFactors = FALSE)
print(tenthclass)

Вихід:

Код:

tenthclass$Blood_group = c("O", "AB", "B+", "A+", "AB")
print(tenthclass)

Вихід:

Видалити рядок і стовпець з фрейму даних

Для видалення рядка та стовпця з фрейму даних ми використовуємо наступну реалізацію коду.

1. Видалити стовпчик

Код:

print(tenthclass)

Вихід:

У цьому кадрі даних, якщо нам доведеться видалити змінну групи крові (крайній правий стовпець), ми передамо наступний код.

Код:

tenthclass$Blood_group = NULL
print(tenthclass)

Вихід:

Оминаючи команду NULL, ми можемо безпосередньо видалити змінну з нашого кадру даних.

2. Видалити рядок

Код:

print(tenthclass)

Вихід:

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

Код:

tenthclass = tenthclass(-1, ) print(tenthclass)

Вихід:

Оновлення даних у кадрі даних

Код:

print(tenthclass)

Вихід:

Припустимо, Сем набрав 98 балів, але згідно з нашими рамками даних 87 є. Отже, ми можемо передати наведений нижче код, щоб виправити його.

Код:

tenthclass$Marks(2) = 98
print(tenthclass)

Вихід:

Висновок

Кадри даних є дуже поширеною формою постановки проблеми. Це список змінної однакової кількості рядків з унікальними ідентифікаторами рядків. Ця стаття допомагає нам знати, як ми можемо додати рядок, додати стовпчик, видалити рядок, видалити стовпчик кадру даних, а також розповідає, як ми можемо оновлювати дані у кадрі даних.

Рекомендовані статті

Це посібник по Рамки даних у Р. Тут ми обговорюємо різні етапи створення фреймів даних та способи вилучення даних з фреймів даних у Р. Ви також можете переглянути наступні статті, щоб дізнатися більше -

  1. Топ 5 типів даних в R
  2. Список корисних R-пакетів
  3. R CSV файли
  4. Функції програми R - значення
  5. Коефіцієнт в R з перевагами

Категорія: