다른 열 조건과 일치하여 열의 최대 값 찾기안녕하세요 여러분,
다른 열 (: Condition)에서 조건을 확인한 후 열 (: PMA Counter)에서 최대 값을 찾아야합니다. 조건 열에는 다른 행에 대한 "이후"및 "이전"문자가 있습니다.
나는 "이후"인 것을 선택하고 그들 사이의 최대 (: PMA 카운터)를 찾고 싶습니다. 이미 아래 스크립트를 사용하고 있지만 작동하지 않고 Condition 열을 고려하지 않고 Max 만 제공합니다.
dt = 현재 테이블 ();
dt << Select Where (Contains (: Condition, "After"));
dt << 새 열 ( "현재 PMA 카운터", 문자, 공칭, 공식 (Col Max (: PMA 카운터)));
스크립팅Re : 다른 열 조건과 일치하여 열의 최대 값 찾기수식에서 Select 행이 적용되지 않습니다. 필요한 것을 처리하는 방법이 있습니다.
dt << New Column( "Current PMA Counter",
Character,
Nominal,
Formula( Col Max( If( Contains( :Condition, "After" ), :PMA Counter, . ) ) )
);
Re : 다른 열 조건과 일치하여 열의 최대 값 찾기짐 정말 감사합니다:)Re : 다른 열 조건과 일치하여 열의 최대 값 찾기"이후"행과 관련된 행에만 최대 값을 지정할 수 있습니까?Re : 다른 열 조건과 일치하여 열의 최대 값 찾기나는 당신이 요구하는 것을 이해하지 못합니다.Re : 다른 열 조건과 일치하여 열의 최대 값 찾기조건 열에 "이후"가있는 행만 현재 PMA 카운터 열에서 최대 값을 얻습니다. 다른 행은 비어 있습니다.Re : 다른 열 조건과 일치하여 열의 최대 값 찾기다음은 공식의 두 가지 버전입니다 (테스트되지 않음). Col Max의 기반이 다릅니다.
// formula where col max is based upon only rows with "After" in PMA Counter
// and the Col Max only appears in rows where PMA Counter has "After" in it
dt << New Column( "Current PMA Counter",
Character,
Nominal,
Formula(
If( Row() == 1,
x = Col Max( If( Contains( :Condition, "After" ), :PMA Counter, . ) )
);
If( Contains( :Condition, "After" ),
y = x,
y = .
);
y;
)
);
// formula where col max is based upon all rows
// and the Col Max only appears in rows where PMA Counter has "After" in it
dt << New Column( "Current PMA Counter",
Character,
Nominal,
Formula(
If( Row() == 1,
x = Col Max( :PMA Counter )
);
If( Contains( :Condition, "After" ),
y = x,
y = .
);
y;
)
);
Re : 다른 열 조건과 일치하여 열의 최대 값 찾기고마워, 짐
값을 찾는 중이지만 어떤 이유로 열에 표시되지 않습니다. 현재 PMA 카운터는 모두 비어 있습니다.