데이터 컴파일을 위해 이번 달의 날짜를 스크립팅하는 방법안녕하세요 여러분,
작동하지 않는 다음 코드가 있습니다.
// Current date
aujourd'hui = Text(Today(),"00000000");
// Obtain the month number format "MM"
numero_mois = Text(Month(aujourd'hui), "00");
// Obtain the year number - 1 format YYYY
numero_annee = Text(Year(aujourd'hui) - 1, "0000");
// Concatenate the result
date_debut_mois_actuel_Y = ("01" || numero_mois || numero_annee);
// Show the result
Show(date_debut_mois_actuel_Y);
dt << Select Where(:Date < date_debut_mois_actuel_Y);
dt << Delete rows;dt(Data Table)에서 날짜가 < 01/당월/금년 -1인 모든 행을 선택하여 삭제하는 것이 목표입니다.
문자 이외의 다른 요소를 연결할 수 없다는 오류를 이해하지만 코드로 돌아가서 날짜를 수동으로 변경하지 않고 2022년 1월 10일 형식(예: 오늘의 기대)으로 날짜를 어떻게 얻을 수 있습니까?
오류 메시지는 다음과 같습니다. 인수는 'Concat' 액세스 또는 평가 시 xxx행의 문자여야 합니다. 잘못된 인수( numero_mois ), "01" || /*###*/numero_mois || /*###*/numero_annee/*###*/
코드는 다음과 같습니다(매월 수동으로 수정됨).
dt << select where(:name("date") < informat("01102022","DDMMYYYY"));
dt << Delete rows;매우 감사합니다 !
친애하는
자동화 및 스크립팅Re: 데이터 편집을 위해 이번 달의 날짜를 스크립팅하는 방법다음을 사용하여 현재 날짜를 얻을 수 있습니다. 오늘() 매월 첫날을 얻는 한 가지 옵션은 다음과 같습니다. 날짜 증분()
Names Default To Here(1);
Date Increment(Today(), "Month", 0, "start");
그런 다음 데이터에 따라 Char 변환을 수행하지 않고 이를 직접 사용할 수 있습니다(JMP에서는 숯() Text()가 아닌 ChatGPT인가요? )를 사용하려고 합니다.
Re: 데이터 편집을 위해 이번 달의 날짜를 스크립팅하는 방법문제를 필요한 것보다 더 복잡하게 만들고 있습니다.내가 할 방법은 다음과 같습니다.
dt << select where( :Date < Date MDY( 1, Month( today ), Year( Today() ) - 1 ) );
try( dt << delete rows );
Re: 데이터 편집을 위해 이번 달의 날짜를 스크립팅하는 방법안녕하세요 txnelson 및 jthi, 도움을 주셔서 감사합니다. 다음 코드가 작동합니다.
dt << select where( :Date < Date DMY( 1, Month( today ), Year( Today() ) - 1 ) );
방금 날짜 MDY를 날짜 DMY로 변경했습니다.
우리는 JMP로 매일 배웁니다 
친애하는 !
Re: 데이터 편집을 위해 이번 달의 날짜를 스크립팅하는 방법여러분 모두에게,
오늘 저는 두 달이 겹치면 코드가 작동하지 않는 것 같다는 것을 깨달았습니다. 오늘 예: 2023년 6월 11일 - 7일 = 2023년 10월 30일.
해결책을 찾지 못했습니다. 조건을 강조 표시해야 합니까? ("if"를 사용하여).
감사해요 !
친애하는
Re: 데이터 편집을 위해 이번 달의 날짜를 스크립팅하는 방법"두 달이 겹친다"는 것이 무슨 뜻인지 잘 모르겠습니다. 작년 당월 1일 이전의 모든 행을 삭제하려는 것이 아니었나요? -7 일은 어디에서 오는가?
Names Default To Here(1);
dt = New Table("Dates",
Add Rows(1000),
New Column("Date", Numeric, Continuous, Format("yyyy-mm-dd", 10), Set Each Value(
Today() - In Days(Row())
))
);
dt << Sort(By(:Date), Replace Table, Order(Ascending));
dt << Select Where(
:Date < Date Increment(Today() - In Years(1), "Month", 0, "start");
);
// dt << select where(:Date < Date DMY(1, Month(Today()), Year(Today()) - 1));
/*
dt << Previous Selected;
*/Re: 데이터 편집을 위해 이번 달의 날짜를 스크립팅하는 방법안녕하세요 jthi 님,
오늘(당월 및 연도에 관계없이) 7일 이전의 모든 행을 삭제하고 싶습니다.
.
감사합니다 !
친애하는
Re: 데이터 편집을 위해 이번 달의 날짜를 스크립팅하는 방법해당 행을 선택하는 방법에 대한 몇 가지 옵션은 다음과 같습니다. 예제 테이블이 있으므로 어떤 행이 선택되고 있는지 더 쉽게 확인할 수 있습니다.
Names Default To Here(1);
dt = New Table("Dates",
Add Rows(1000),
New Column("Date", Numeric, Continuous, Format("yyyy-mm-dd", 10), Set Each Value(
Today() - In Days(Row())
))
);
dt << Sort(By(:Date), Replace Table, Order(Ascending));
dt << Select Where(
:Date < Date Increment(Today() - In Days(7), "Day", 0, "start");
);
// or using Date Difference
// dt << Select Where(Date Difference(:Date, Today(), "Day") > 7);
// comparison between date and today (depending in your data, removing time of day might be needed)
// dt << Select Where(:Date - Time Of Day(:Date) < Today() - In Days(7) - Time Of Day(Today()));
/*
dt << Previous Selected;
*/Re: 데이터 편집을 위해 이번 달의 날짜를 스크립팅하는 방법안녕하세요 jthi 님,
정말 감사합니다. 이 코드는
dt << Select Where(Date Difference(:Date, Today(), "Day") > 7);
완벽하게 작동합니다!
친애하는
Re: 데이터 편집을 위해 이번 달의 날짜를 스크립팅하는 방법정확한 데이터 컴파일을 보장하기 위해 이번 달의 날짜를 스크립팅하는 프로세스를 설명할 수 있습니까?
Re: 데이터 컴파일을 위해 이번 달의 날짜를 스크립팅하는 방법월의 첫날만 원할 경우 Today()를 사용하여 오늘 날짜를 가져온 다음 날짜 DMY를 사용하여 월과 연도를 가져와 날짜를 만듭니다.
now = Today();
first_of_month = Date DMY(1, Month(now), Year(now));
Show(As Date(first_of_month));