R で with() 関数と inside() 関数を使用する方法


R のwith()関数とinside()関数を使用して、データ フレームに基づいて式を評価できます。

これらの関数は次の構文を使用します。

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

金:

  • data:データブロックの名前
  • 式:評価する式

2 つの関数の違いは次のとおりです。

  • 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()関数を使用して、データ フレームの 2 つの列間の値を乗算できます。

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

[1] 6 10 0 35 54 40

データ フレームのx列とy列の値が乗算され、結果は長さ 6 のベクトルになります。

例 2: inside() 関数の使用

次のinside()関数を使用して、データ フレーム内の 2 つの列間の値を乗算し、その結果をデータ フレーム内の新しい列に割り当てることができます。

 #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 でデータ フレームを列ごとに並べ替える方法

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です