特定の列の前の行を照合し、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

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

分類Dev

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

分類Dev

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

分類Dev

計算で前の行を参照する

分類Dev

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

分類Dev

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

分類Dev

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

分類Dev

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

分類Dev

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

分類Dev

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

分類Dev

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

分類Dev

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

分類Dev

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

分類Dev

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

分類Dev

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

分類Dev

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

分類Dev

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

分類Dev

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

分類Dev

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

分類Dev

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

分類Dev

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

分類Dev

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

分類Dev

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

分類Dev

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

分類Dev

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

分類Dev

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

分類Dev

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

分類Dev

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

分類Dev

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

Related 関連記事

  1. 1

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

  2. 2

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

  3. 3

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

  4. 4

    計算で前の行を参照する

  5. 5

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

  6. 6

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

  7. 7

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

  8. 8

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

  9. 9

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

  10. 10

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

  11. 11

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

  12. 12

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

  13. 13

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

  14. 14

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

  15. 15

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

  16. 16

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

  17. 17

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

  18. 18

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

  19. 19

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

  20. 20

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

  21. 21

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

  22. 22

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

  23. 23

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

  24. 24

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

  25. 25

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

  26. 26

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

  27. 27

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

  28. 28

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

  29. 29

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

ホットタグ

アーカイブ