Лабораторна робота №1

Вступ у Data Science

1. ВЕКТОРИ

Ви торгуєте двома видами криптовалют: Біткоїн (BTC) та Ефіріум (ETH).
За тиждень торгів ви отримали наступні результати:

Для BTC:
  • Понеділок заробили 140$
  • Вівторок втратили 50$
  • Середа заробили 20$
  • Четверг втратили 120$
  • П’ятниця заробили 240$
Для ETH:
  • Понеділок втратили 24$
  • Вівторок втратили 50$
  • Середа заробили 100$
  • Четверг втратили 350$
  • П’ятниця заробили 10$

Ви вирішили проаналізувати результати тижня за допомогою R.

1.1. Створіть два вектори BTC_vector та ETH_vector з результатами своїх торгів.

BTC_vector <- c(140, ..., ..., ..., ...)
ETH_vector <- c(-24, ..., ..., ..., ...)



1.2. Додайте імена до кожного значення вектора.

names(BTC_vector) <- c("Понеділок", "...", "...", "...", "...")
names(ETH_vector) <- c("Понеділок", "...", "...", "...", "...")



1.3. Розрахуйте суму ваших щоденних торгів по двом криптовалютам та запишіть результати у вектор total_daily.

total_daily <- 



1.4. Розрахуйте суму ваших торгів для двох криптовалют та запишіть результати у вектори total_BTC та total_ETH.

total_BTC <- sum()
total_ETH <- ...



1.5. Розрахуйте загальну суму ваших торгів та запишіть результати у вектор total_week. Роздрукуйте результати

total_week <- ... + ...
print()



1.6. Порівняйте результати торгів BTC та ETH. Чи заробили Ви більше з Біткоїну у порівнянні з Ефіріумом?

total_BTC ... total_ETH



1.7. Запишіть результати торгів з середи BTC у змінну BTC_wednesday

BTC_wednesday <- BTC_vector[...]



1.8. Запишіть результати торгів BTC з вівторка по четверг у змінну BTC_midweek

BTC_midweek <- BTC_vector[]



1.9. Вибиріть перші три елементи вектора BTC_vector за допомогою їх імен “Понеділок”, “Вівторок”, “Середа”. Запишіть результати у вектор BTC_start. Розрахуйте середнє значення вектора BTC_start за допомогою функції mean()

BTC_start <- BTC_vector[c("...",)]
mean()



1.10. Які елементи вектора BTC_vector позитивні (більші за нуль). Запишіть ці значення у вектор selection_vector Роздрукуйте результат. Роздруківка покаже, в який день ви заробили (TRUE) або втратили (FALSE) гроші

selection_vector <- ...
print(selection_vector)



1.11. Використайте вектор selection_vector у квадратних дужках, щоб визначити суми, які Ви заробили у прибуткові дні. Запишіть результати у вектор BTC_winning_days

BTC_winning_days <- BTC_vector[...]
print(BTC_winning_days)



1.12. Аналогічно до пунку 10, зробіть розрахунок для ETH_vector

selection_vector <- ...
print(selection_vector)



1.13. Аналогічно до пунку 11, зробіть розрахунок для ETH_vector

ETH_winning_days <- ETH_vector[...]
print(ETH_winning_days)



2. ТАБЛИЦІ ДАНИХ (DATA FRAME)



2.1. Роздрукуйте вбудований у R дата фрейм mtcars

mtcars



2.2. Використайте функцію head() до дата фрейму mtcars для відображення перших спостережень

head(mtcars)



2.3. Дослідіть структуру даних за допомогою функції str()

str(mtcars)



2.4. Створення data frame
Зараз нам потрібно побудувати дата фрейму, який описує основні характеристики восьми планет нашої Сонячної системи. До них належать:

  • Тип планети (землеподібна або газовий гігант).
  • Діаметр планети відносно діаметра Землі.
  • Обертання планети навколо Сонця щодо обертання Землі.
  • Чи є на планеті кільця: так чи ні (TRUE або FALSE).

Дані вже сформровані у відповідні вектори: name, type, diameter, rotation та rings

Використайте функцію data.frame () для побудови дата фрейму. Передайте вектори name, type, diameter, rotation та rings як аргументи в data.frame (). Збережіть результат у planets_df.

name <- c("Mercury", "Venus", "Earth", 
          "Mars", "Jupiter", "Saturn", 
          "Uranus", "Neptune")
type <- c("Terrestrial planet", 
          "Terrestrial planet", 
          "Terrestrial planet", 
          "Terrestrial planet", "Gas giant", 
          "Gas giant", "Gas giant", "Gas giant")
diameter <- c(0.382, 0.949, 1, 0.532, 
              11.209, 9.449, 4.007, 3.883)
rotation <- c(58.64, -243.02, 1, 1.03, 
              0.41, 0.43, -0.72, 0.67)
rings <- c(FALSE, FALSE, FALSE, FALSE, TRUE, TRUE, TRUE, TRUE)

#Створення дата фрейму
planets_df <- 



2.5. Переглянте структуру дата фрейму з пункту 2.4

...(planets_df)



2.5. Індексація елементів дата фрейму 1/2
Подібно до векторів, індексація дата фрейму виконується за допомогою квадратних дужок []. Використовуючи кому, ви можете вказати, що вибрати з рядків та стовпців відповідно. Наприклад:

  • my_df [1,2] вибирає значення в першому рядку та другому стовпці в my_df.
  • my_df [1:3, 2:4] вибирає рядки 1, 2, 3 та стовпці 2, 3, 4 у my_df.

Іноді потрібно виділити всі елементи рядка або стовпця. Наприклад, my_df [1,] вибирає всі елементи першого рядка. Давайте зараз застосуємо цю техніку на planets_df!


Із planets_df виберіть діаметр Меркурія (1 рядок, 3 стовпчик)

planets_df[..., ...]



Із planets_df виберіть інформація про Марс (4 рядок)

planets_df[...,]



Із planets_df виберіть перші 5 значень зі стовпчика діаметр

planets_df[...:..., ...]



2.6. Індексація елементів дата фрейму 2/2
Існує декілька варіантів, як обрати цілий стовпчик (конкретну змінну):

planets_df[,3]
planets_df[,"diameter"]

Однак є більш простий варіант. Якщо ваші стовпці мають імена, ви можете використовувати знак $:

planets_df$diameter



Використайте знак $, щоб вибрати змінну rings з planets_df. Збережіть результат у вектор ring_vector.
Роздрукуйте ring_Vector, щоб перевірити, чи все правильно

rings_vector <- 
print()



2.7. Перевірка умов у дата фреймі
Виконайте наступний код для того щоб оберати планети, які мають кільця.

# Необхідно просто виконати код та отримати результат
planets_df[rings_vector == TRUE,]