두 날짜 열(시작 날짜 및 종료 날짜) 사이의 평일 수(월요일~금요일)를 계산합니다.안녕하세요 커뮤니티,
제이엠피 18에서 두 날짜 열( 시작 날짜 와 종료 날짜 ) 사이의 주중(월요일~금요일) 수를 계산하는 열 수식을 만들고 싶습니다 . 주말(토요일과 일요일)은 제외해야 합니다. 수식은 JMP의 열 수식 편집기 와 호환되어야 하며 오류가 발생하지 않아야 합니다. 저는 JSL을 사용하지 않습니다.
귀하의 지원에 미리 감사드립니다.
기본 데이터 분석 및 모델링데이터 탐색 및 시각화Re: 두 날짜 열(시작 날짜 및 종료 날짜) 사이의 평일 수(월요일~금요일)를 계산합니다.올바른 결과가 나오는 예시 열이 포함된 예시 표를 제공해 주실 수 있나요?
Re: 두 날짜 열(시작 날짜 및 종료 날짜) 사이의 평일 수(월요일~금요일)를 계산합니다.안녕하세요 @크리스티나 ,
이것을 시도해 보세요. 하단의 열 이름을 데이터 테이블에 있는 이름으로 변경하는 것을 잊지 마세요.
감사해요,
벤
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: 두 날짜 열(시작 날짜 및 종료 날짜) 사이의 평일 수(월요일~금요일)를 계산합니다.몇 가지 공식이 있습니다(성능에 대한 아이디어는 없습니다). 두 날짜의 차이를 계산하는 방법에 따라 약간의 조정이 필요할 수 있습니다.
합계 사용
</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: 두 날짜 열(시작 날짜 및 종료 날짜) 사이의 평일 수(월요일~금요일)를 계산합니다.안녕,
빠른 답변 감사합니다! 제 데이터로는 위에 언급한 두 공식 모두 같은 결과를 냅니다. 몇 가지 예시 데이터를 제공합니다.
예를 들어: 종료 날짜는 31.01.2025이고 시작 날짜는 23.01.2025입니다. 두 수식의 결과는 7입니다.
7일의 작업일인데 정확한 해결책도 감사합니다:) ChatGPT는 이를 해결할 수 없었습니다.