2つの日付列(開始日と終了日)間の平日(月曜日から金曜日)の数を計算します。こんにちは、コミュニティの皆さん
ジャンプ 18 で、2 つの日付列 (開始日と終了日) 間の平日 (月曜日から金曜日) の数を計算する列式を作成したいと考えています。週末 (土曜日と日曜日) は除外する必要があります。式はJMP の列式エディターと互換性があり、エラーが発生しない必要があります。私は JSL を使用していません。
どうぞよろしくお願いいたします。
基本的なデータ分析とモデリングデータの探索と視覚化Re: 2 つの日付列 (開始日と終了日) 間の平日 (月曜日から金曜日) の数を計算します正しい結果の例の列を含む例のテーブルを提供できますか?
Re: 2 つの日付列 (開始日と終了日) 間の平日 (月曜日から金曜日) の数を計算しますこんにちは@クリスティーナ 、
ぜひ試してみてください。下部の列名をデータ テーブルにある名前に変更するようにしてください。
ありがとう、
ベン
Names Default to Here(1);
dt = Current Data Table();
//Wipe the old weekday count column if it exists from this script being ran
try(dt:Weekdays Count<<SET selected=""></SET>
<BR />
<BR />Re: 2 つの日付列 (開始日と終了日) 間の平日 (月曜日から金曜日) の数を計算しますここにいくつかの数式があります(パフォーマンスについてはわかりません)。2つの日付の差を計算する方法に応じて、若干の調整が必要になる場合があります。
合計の使用
</CODE></PRE>
<P>行列+合計を使用する</P>
<PRE><CODE class=" language-jsl">Sum(1 < Day of week(:start + (0::Date Difference(:start, :end, "day")) * In Days(1)) < 7)Summation(i = 0, Date Difference(:start, :end, "day"),
!(Day of week(:start + In Days(i)) == 7 | Day of week(:start + In Days(i)) == 1);
)
サンプルスクリプト
もっと見る...
Names Default To Here(1);
dt = New Table("Untitled",
Add Rows(365),
Compress File When Saved(1),
New Column("start", Numeric, "Continuous", Format("d/m/y", 10), Input Format("d/m/y"), Formula(24Feb2025)),
New Column("end", Numeric, "Continuous", Format("d/m/y", 10), Input Format("d/m/y"), Formula(24Feb2025 + In Days(Row() - 1))),
New Column("Column 3",
Numeric,
"Continuous",
Format("Best", 12),
Formula(
Summation(i = 0, Date Difference(:start, :end, "day"),
!(Day of week(:start + In Days(i)) == 7 | Day of week(:start + In Days(i)) == 1);
)
)
),
New Column("Column 3",
Numeric,
"Continuous",
Format("Best", 12),
Formula(
Sum(1 < Day of week(:start + (0::Date Difference(:start, :end, "day")) * In Days(1)) < 7);
)
)
);
Re: 2 つの日付列 (開始日と終了日) 間の平日 (月曜日から金曜日) の数を計算しますこんにちは、
素早い返信ありがとうございます。私のデータでは、上記の両方の式で同じ結果が得られます。サンプルデータをいくつか提供します。
たとえば、終了日は 2025 年 1 月 31 日、開始日は 2025 年 1 月 23 日です。両方の数式の結果は 7 になります。
それは7営業日ですので、正しい解決策にも感謝します:)ChatGPTはそれを解決できなかった