特定の列の前の行を照合し、Rで計算を実行する

ベン

私は現在、これに似たデータファイルを持っています:

R ID A B    
1 A1 0 0  
2 A1 2 4  
3 A1 4 8    
4 A2 0 0  
5 A2 3 3  
6 A2 6 6

「ID」が一致する場合にのみ、前の行から「(8-4)/(4-2)」を計算するスクリプトを作成したいと思います。たとえば、行3の列「C」の出力で、「ID」列のA1 == A1の場合、(8-4)/(4-2)= 2です。A1!= A1の場合、出力は0です。

出力は次のようになります。

R ID A B C   
1 A1 0 0 0  
2 A1 2 4 2  
3 A1 4 8 2     
4 A2 0 0 0  
5 A2 3 3 1   
6 A2 6 6 1  

うまくいけば、私はこれを混乱しない方法で正しく説明しました。

ロナックシャー

行間の差を計算して除算group_by IDするdiffために使用できます。

library(dplyr)
df %>% group_by(ID) %>% mutate(C = c(0, diff(B)/diff(A)))

#      R ID        A     B     C
#  <int> <fct> <int> <int> <dbl>
#1     1 A1        0     0     0
#2     2 A1        2     4     2
#3     3 A1        4     8     2
#4     4 A2        0     0     0
#5     5 A2        3     3     1
#6     6 A2        6     6     1

同様に使用する data.table

library(data.table)
setDT(df)[, C := c(0, diff(B)/diff(A)), ID]

データ

df <- structure(list(R = 1:6, ID = structure(c(1L, 1L, 1L, 2L, 2L, 
2L), .Label = c("A1", "A2"), class = "factor"), A = c(0L, 2L, 
4L, 0L, 3L, 6L), B = c(0L, 4L, 8L, 0L, 3L, 6L)), class = "data.frame", 
row.names = c(NA, -6L))

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

行と列の名前を照合し、先行する3つの列の平均を計算するループ

分類Dev

DataTableの列の前の行の合計を計算する

分類Dev

正規表現で列を照合し、R dplyrでmutateを使用して計算を実行しますか?

分類Dev

ある列を別の列から減算して、SQL Server 2008R2の合計を実行します。

分類Dev

計算で前の行を参照する

分類Dev

IronPythonで数学計算の合計を実行する方法

分類Dev

Pythonは、実行中の値の合計を1行で計算します

分類Dev

特定の日付の行の合計量を計算します

分類Dev

パンダの特定の辞書で特定の計算を実行して、新しい列を作成します

分類Dev

データフレーム内の特定の行で計算を実行し、その結果を使用して追加の計算を実行する

分類Dev

Rの特定の値の列と行を合計する

分類Dev

列の値をimpalaの合計行で除算します

分類Dev

列の値を使用してCSVで列ごとに計算を実行する

分類Dev

Rの特定の名前パターンを持つ列の行平均を計算します

分類Dev

列の行を合計(および乗算)する-R

分類Dev

R-リストを使用して特定の列の行を合計する

分類Dev

2つの列の合計で計算を実行するにはどうすればよいですか?

分類Dev

前の行の列の値を使用して次の行の列の値を計算する方法

分類Dev

Spotfireの特定の行の同じ列の差を計算する

分類Dev

特定の列番号まで行を合計するExcelの数式

分類Dev

特定の列のみで行を合計する方法

分類Dev

Pythonで実行する食料品の合計価格を計算する

分類Dev

R:ある列でgroupByを実行し、別の列を合計する効率的な方法はありますか?

分類Dev

rの特定の基準で行を合計する

分類Dev

列のすべての行をRの特定の行名で除算する方法

分類Dev

列のすべての行をRの特定の行名で除算する方法

分類Dev

R:dplyrを使用して行を行の合計で除算します

分類Dev

PostgreSQL:特定の値を超える列を持つ行の割合を計算します

分類Dev

列の合計が基準を満たすまで、乗算によって特定の行を増やします

Related 関連記事

  1. 1

    行と列の名前を照合し、先行する3つの列の平均を計算するループ

  2. 2

    DataTableの列の前の行の合計を計算する

  3. 3

    正規表現で列を照合し、R dplyrでmutateを使用して計算を実行しますか?

  4. 4

    ある列を別の列から減算して、SQL Server 2008R2の合計を実行します。

  5. 5

    計算で前の行を参照する

  6. 6

    IronPythonで数学計算の合計を実行する方法

  7. 7

    Pythonは、実行中の値の合計を1行で計算します

  8. 8

    特定の日付の行の合計量を計算します

  9. 9

    パンダの特定の辞書で特定の計算を実行して、新しい列を作成します

  10. 10

    データフレーム内の特定の行で計算を実行し、その結果を使用して追加の計算を実行する

  11. 11

    Rの特定の値の列と行を合計する

  12. 12

    列の値をimpalaの合計行で除算します

  13. 13

    列の値を使用してCSVで列ごとに計算を実行する

  14. 14

    Rの特定の名前パターンを持つ列の行平均を計算します

  15. 15

    列の行を合計(および乗算)する-R

  16. 16

    R-リストを使用して特定の列の行を合計する

  17. 17

    2つの列の合計で計算を実行するにはどうすればよいですか?

  18. 18

    前の行の列の値を使用して次の行の列の値を計算する方法

  19. 19

    Spotfireの特定の行の同じ列の差を計算する

  20. 20

    特定の列番号まで行を合計するExcelの数式

  21. 21

    特定の列のみで行を合計する方法

  22. 22

    Pythonで実行する食料品の合計価格を計算する

  23. 23

    R:ある列でgroupByを実行し、別の列を合計する効率的な方法はありますか?

  24. 24

    rの特定の基準で行を合計する

  25. 25

    列のすべての行をRの特定の行名で除算する方法

  26. 26

    列のすべての行をRの特定の行名で除算する方法

  27. 27

    R:dplyrを使用して行を行の合計で除算します

  28. 28

    PostgreSQL:特定の値を超える列を持つ行の割合を計算します

  29. 29

    列の合計が基準を満たすまで、乗算によって特定の行を増やします

ホットタグ

アーカイブ