Розбийте це
Часто у вас є дані для кількох груп разом в одному датафреймі. Датафрейм cash був прикладом цього в розділі 3. Там були стовпці cash_flow і year для двох груп (компанії A та B). А що, якщо ви хочете розділити цей датафрейм на два окремі датафрейми за ознакою company? У наступній вправі ви дослідите, чому це може бути корисно, але спершу розберімося, як це зробити за допомогою функції split().
Створіть grouping, за яким виконуватиметься розбиття, і використайте split(), щоб створити список із двох датафреймів.
grouping <- cash$company
split_cash <- split(cash, grouping)
split_cash
$A
company cash_flow year
1 A 1000 1
2 A 4000 3
3 A 550 4
$B
company cash_flow year
4 B 1500 1
5 B 1100 2
6 B 750 4
7 B 6000 5
Щоб відновити початковий датафрейм, скористайтеся unsplit(split_cash, grouping).
Ця вправа є частиною курсу
Вступ до R для фінансів
Інструкції до вправи
- Датафрейм
cashдоступний у вашому робочому середовищі. - Створіть нове
groupingзі стовпцяyear. - Використайте
split(), щоб розбитиcashна список із 5 датафреймів, згрупованих заyear. Присвойте результат доsplit_cash. - Виведіть
split_cash. - Використайте
unsplit(), щоб знову об'єднати датафрейми. Присвойте результат доoriginal_cash. - Виведіть
original_cash, щоб порівняти з початковим датафреймомcash.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# Define grouping from year
grouping <-
# Split cash on your new grouping
split_cash <-
# Look at your split_cash list
# Unsplit split_cash to get the original data back.
original_cash <-
# Print original_cash