for 루프에서 문제안녕하세요, 이 for 루프 공식이 작동하지 않는 이유를 알 수 없습니다. 단위가 시간에 있으면 단순히 새 열을 만든 다음 시간으로 변환합니다. 샘플 데이터도 첨부되어 있습니다. 감사 해요.
ColNames = dt << get column names( string, Numeric, character, continuous, Nominal );
N Items( ColNames );
For( i = 1, i <= N Items( ColNames ), i++,
If( Ends With( ColNames[i], "(secs)" ),
New Column (Concat(ColNames[i], "_to_", "Hr"), Formula(AS Column(ColNames[i])/3600) ),
Ends With( ColNames[i], "(min)" ),
New Column (Concat(ColNames[i], "_to_", "Hr"), Formula(AS Column(ColNames[i])/60) ),)
);
Wait( 0 );
스크립팅Re: for 루프에서 문제문제는 Formula 요소가 제공된 수식을 구문 분석한 다음 결과 코드를 수식에 배치하지 않는다는 것입니다.따라서 수식 요소에 표시되는 것은 수식이 있어야 하는 JSL과 정확히 일치해야 합니다.아래는 jsl의 재작업입니다.
Names Default To Here( 1 );
dt = Current Data Table();
ColNames = dt << get column names( string, Numeric, character, continuous, Nominal );
//N Items( ColNames );
For( i = 1, i <= N Items( ColNames ), i++,
If(
Ends With( ColNames[i], "(secs)" ),
New Column( Concat( ColNames[i], "_to_", "Hr" ),
Formula( Eval( Parse( ":\!"" || ColNames[i] || "\!"n / 3600" ) ) )
),
Ends With( ColNames[i], "(min)" ),
New Column( Concat( ColNames[i], "_to_", "Hr" ),
Formula( Eval( Parse( ":\!"" || ColNames[i] || "\!"n / 60" ) ) )
),
)
);Re: for 루프에서 문제다음을 사용할 수도 있습니다. JSL 견적() , 코드가 강조 표시된 상태로 유지되도록 합니다.
Names Default to Here( 1 );
dt = Current Data Table();
For( i = 1, i <= N Cols( dt ), i++,
column name = Column( dt, i ) << Get Name;
If( Ends With( column name, "(secs)" ),
Eval( Parse( Eval Insert( JSL Quote(
dt << New Column( "^column name^_to_Hr", Formula( :Name("^column name^" ) / 3600 ) )
) ) ) )
,
Ends With( column name, "(min)" ),
Eval( Parse( Eval Insert( JSL Quote(
dt << New Column( "^column name^_to_Hr", Formula( :Name("^column name^" ) / 60 ) )
) ) ) )
)
);