Rの別の列値を通知するための累積列合計

ショーンDフィリップ

顧客のトランザクションデータを含むデータフレーム(pricedata)があります。顧客ごとにTNPごとにデータフレームを最高から最低までarrange()します。最高のTNPから下に移動し、列全体の合計TNPの60%に達するまで、TNPを累積して、それらすべての顧客にクラス= "A"を与えたいと思います。次に、列を続けて、列の合計TNPの60%から90%の間の後続の顧客にクラス= "B"を与え、残りをクラス= "C"にします。

これはデータです:

   TNP      Class
 11847.47     C
 11845.76     C
 11840.06     C
 11814.44     C
 11775.24     C
 11766.90     C

これは、私の目標を達成するために構築した関数です。

FUN.sthp.1 <- function(TNP) { 
  #The dataframe must be ordered by TNP for this cumsum function to work
  Acut<-(.6*sum(pricedata$TNP))
  Bcut<-(.9*sum(pricedata$TNP))
  Ccut<-(1*sum(pricedata$TNP))

  Summary.DF<- pricedata[pricedata$TNP>=TNP,]
  total<-sum(Summary.DF$TNP)

  Class<-ifelse(total<=Acut, "A", 
              ifelse(total<=Bcut & total>Acut, "B",
                     "C"))
  return(Class)
}

次に、mapply()を使用してこの関数を呼び出し、TNPにフィードします。

すべての入力なしで同じことを実現する関数、または関数内の機能はありますか?

jdharrison

を使用cumsumして累積合計を取得できますこれを合計で割りsumます。次に、を使用してレベルを割り当てることができますcutマージン(60%で何が起こるかなど)を処理するオプションがあり、を使用してヘルプファイルを見ることができます?cut

"TNP      Class
11847.47     C
11845.76     C
11840.06     C
11814.44     C
11775.24     C
11766.90     C" -> myDat
out <- read.table(text = myDat, stringsAsFactors = FALSE, header = TRUE)
cut(cumsum(out$TNP)/sum(out$TNP), breaks =c(0,60,90,100)/100, labels = LETTERS[1:3])
[1] A A A B B C

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

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

編集
0

コメントを追加

0

関連記事

分類Dev

Rの行列の列(累積合計)を合計する方法は?

分類Dev

別の列の値に基づく列の累積合計(R)

分類Dev

Rの複数の列の累積合計を計算する

分類Dev

累積合計の最大値を新しい列に抽出する

分類Dev

別の列に基づいて累積合計をリセットする

分類Dev

配列の累積合計

分類Dev

配列の累積合計

分類Dev

列の累積合計

分類Dev

列の値が他の値よりも大きい場合にPythonで累積合計列を作成する方法

分類Dev

別の列の文字列に基づく合計/累積列を実行するPythonGroupby

分類Dev

別の列の他の行の値を条件として、現在の行の累積を計算する方法

分類Dev

複数の列の結合を使用した累積合計

分類Dev

MS Excel-別の列の「id値」に基づく列の累積合計?

分類Dev

0-1列を1秒の間の累積合計で埋める

分類Dev

列の値に基づいて累積合計を持ち、groupbyを持つ2つの列を作成する方法

分類Dev

複数のfloat列の累積合計を計算する方法は?

分類Dev

配列の累積合計、別の配列の条件

分類Dev

グループ内の別の列に基づいて選択的な累積合計を高速化する

分類Dev

ハイブ-前の列の値の条件で累積合計をフェッチする

分類Dev

別の列で定義された間隔の累積合計を計算するにはどうすればよいですか?

分類Dev

pandas.DataFrameの列の累積合計を逆にします

分類Dev

DataFrame:条件に達するまでの列の累積合計と新しい列の合計を返す

分類Dev

配列内の不規則なスライスの合計を累積する

分類Dev

データフレームの各列の累積合計を作成する方法

分類Dev

Excelの非累積カテゴリ列に基づいて累積全体合計を動的に作成する方法

分類Dev

一致した文字列のインスタンスと累積合計値をカウントします

分類Dev

合計が与えられた値に等しいサブアレイを見つけるための累積合計

分類Dev

Cの配列に対する高速累積合計

分類Dev

列の累積合計と割合?

Related 関連記事

  1. 1

    Rの行列の列(累積合計)を合計する方法は?

  2. 2

    別の列の値に基づく列の累積合計(R)

  3. 3

    Rの複数の列の累積合計を計算する

  4. 4

    累積合計の最大値を新しい列に抽出する

  5. 5

    別の列に基づいて累積合計をリセットする

  6. 6

    配列の累積合計

  7. 7

    配列の累積合計

  8. 8

    列の累積合計

  9. 9

    列の値が他の値よりも大きい場合にPythonで累積合計列を作成する方法

  10. 10

    別の列の文字列に基づく合計/累積列を実行するPythonGroupby

  11. 11

    別の列の他の行の値を条件として、現在の行の累積を計算する方法

  12. 12

    複数の列の結合を使用した累積合計

  13. 13

    MS Excel-別の列の「id値」に基づく列の累積合計?

  14. 14

    0-1列を1秒の間の累積合計で埋める

  15. 15

    列の値に基づいて累積合計を持ち、groupbyを持つ2つの列を作成する方法

  16. 16

    複数のfloat列の累積合計を計算する方法は?

  17. 17

    配列の累積合計、別の配列の条件

  18. 18

    グループ内の別の列に基づいて選択的な累積合計を高速化する

  19. 19

    ハイブ-前の列の値の条件で累積合計をフェッチする

  20. 20

    別の列で定義された間隔の累積合計を計算するにはどうすればよいですか?

  21. 21

    pandas.DataFrameの列の累積合計を逆にします

  22. 22

    DataFrame:条件に達するまでの列の累積合計と新しい列の合計を返す

  23. 23

    配列内の不規則なスライスの合計を累積する

  24. 24

    データフレームの各列の累積合計を作成する方法

  25. 25

    Excelの非累積カテゴリ列に基づいて累積全体合計を動的に作成する方法

  26. 26

    一致した文字列のインスタンスと累積合計値をカウントします

  27. 27

    合計が与えられた値に等しいサブアレイを見つけるための累積合計

  28. 28

    Cの配列に対する高速累積合計

  29. 29

    列の累積合計と割合?

ホットタグ

アーカイブ