Как использовать функции 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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *