2つのカテゴリ列と結合されたデータに基づいて移動平均を計算しますTrial(Before、After)およびTrialWeek(1、2、3、4、5)のOrderIdおよびOrderDateごとに平均数十個の卵を含むデータセットがあります。 移動平均関数を使用して、前の週のデータを使用して、週末の平均数十を計算し、この数値を新しい列に入力したいと思います。 したがって、同じTrialとTrialWeekを持つすべての行に対して、平均数十を繰り返す必要があります。
例えば:
Trial == Before&TrialWeek == 1 = TrialWeek1の平均数十
Trial == Before&TrialWeek == 1&2 =平均数十TrialWeek2
Trial == Before&TrialWeek == 1&2&3 = Mean Dozens TrialWeek3など。
移動平均では、平均が計算される行数を入力する必要がありますが、TrialWeekあたりの行数は同じではないため、固定数の行を使用してこれを計算することはできません。 これを行うには数式を作成する必要があることはわかっていますが、数式の作成方法については行き詰まっています。 JMP Pro16を使用しています。 どんな助けでも大歓迎です!
スクリプティングRe:2つのカテゴリ列と結合されたデータに基づいて移動平均を計算しますこれはあなたが探しているものですか?

x = .;
curWeek = :TrialWeek;
If( :Trial == "Before" & :TrialWeek != :TrialWeek[Row() + 1],
x = Col Mean( If( :Trial == "Before" & :TrialWeek <= curWeek, :Dozens, . ) )
);
x;
Re:2つのカテゴリ列と結合されたデータに基づいて移動平均を計算しますありがとうございました@txnelson !
Trial == Afterの移動平均も計算するようにコードを調整したので、それは機能しているようです。 しかし、テーブルを並べ替えない限り、コードがTrialWeek == 1の移動平均を計算していないことに気付きました。
x = .;
curWeek = :TrialWeek;
If(
:Trial == "Before" & :TrialWeek != :TrialWeek[Row() + 1], x = Col Mean( If( :Trial == "Before" & :TrialWeek <= curWeek, :Dozens, . ) ),
:Trial == "After" & :TrialWeek != :TrialWeek[Row() + 1], x = Col Mean( If( :Trial == "After" & :TrialWeek <= curWeek, :Dozens, . ) )
);
x;