Як використовувати функції with() і inside() у r


Функції with() і inside() у R можна використовувати для оцінки виразу на основі кадру даних.

Ці функції використовують такий синтаксис:

 with(data, expression)
within(data, expression)

золото:

  • дані: ім’я блоку даних
  • вираз: вираз для оцінки

Ось різниця між двома функціями:

  • with() обчислює вираз без зміни вихідного кадру даних.
  • inside() обчислює вираз і створює копію вихідного кадру даних.

У наведених нижче прикладах показано, як використовувати кожну функцію на практиці з таким кадром даних:

 #create data frame
df <- data. frame (x=c(3, 5, 5, 7, 6, 10),
                 y=c(2, 2, 0, 5, 9, 4))

#view data frame
df

   xy
1 3 2
2 5 2
3 5 0
4 7 5
5 6 9
6 10 4

Приклад 1: використання функції with().

Ми можемо використовувати наступну функцію with() , щоб перемножити значення між двома стовпцями кадру даних:

 #multiply values between x and y
with(df, x*y)

[1] 6 10 0 35 54 40

Значення в стовпцях x і y у кадрі даних перемножуються, і результатом є вектор довжини 6.

Приклад 2: використання функції inside().

Ми можемо використати таку функцію inside() , щоб помножити значення між двома стовпцями у фреймі даних і призначити результати новому стовпцю у фреймі даних:

 #multiply values in x and y and assign results to new column z
within(df, z <- x*y)

   X Y Z
1 3 2 6
2 5 2 10
3 5 0 0
4 7 5 35
5 6 9 54
6 10 4 40

Результати множення тепер зберігаються в новому стовпці під назвою z .

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

 #view original data frame
df

   xy
1 3 2
2 5 2
3 5 0
4 7 5
5 6 9
6 10 4

Щоб постійно зберігати результати множення, ви повинні призначити результати новому кадру даних:

 #multiply values in x and y and assign results to new data frame
df_new <- within(df, z <- x*y)

#view new data frame
df_new

   X Y Z
1 3 2 6
2 5 2 10
3 5 0 0
4 7 5 35
5 6 9 54
6 10 4 40

Додаткові ресурси

У наступних посібниках пояснюється, як виконувати інші типові завдання в R:

Як додати стовпець до кадру даних у R
Як додати порожній стовпець до кадру даних у R
Як відсортувати фрейм даних за стовпцем у R

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *