열 수식에서 "for 루프"를 사용할 수 있습니까?안녕 모두,
이 두 작업(새 열을 만든 다음 ForLoop 실행)을 하나로 결합하는 방법이 있습니까?
열에 고객 ID를 반복한 다음 어느 시점에서 변경되고 두 번째 ID가 계속 반복되고 세 번째 ID가 계속 반복됩니다. Unq_Id라는 새 열을 만들고 싶습니다. Customer_Id가 변경될 때까지 해당 값은 비어 있어야 합니다. 아래 스크립트에서 이 작업을 수행할 수 있지만 더 나은 방법이 있는지 궁금합니다. 이것은 Column Formula 내에서 루프를 실행하거나 이와 유사한 것을 의미합니다!
dt << 새 열( "Unq_ID", 숫자, 연속, 각 값 설정());
dt << Sort( by(:Customer_ID), Order(오름차순), 테이블 바꾸기(1) );
(i = 1, i <= N Rows(dt), i++,
만약에(
:Customer_ID[i] == :Customer_ID[i+1], :Unq_ID[i] = :Customer_ID[i]
)
);
어떠한 제안?
고마워, 하리
스크립팅Re: 열 수식에서 "for 루프"를 사용할 수 있습니까?여기 그것을 하는 한 가지 방법이 있습니다

Names Default To Here( 1 );
dt = New Table( "custIDs",
New Column( "Customer_ID",
character,
values( {"c1", "c1", "c1", "c2", "c2", "c3", "c3", "c3"} )
)
);
For( i = 1, i <= N Rows( dt ), i++,
If( i == 1,
dt << New Column( Char( :Customer_ID[i] ), character );
Column( dt, :Customer_ID[i] )[i] = :Customer_ID[i];
,
If( :Customer_ID[i] != :Customer_ID[i - 1],
dt << New Column( Char( :Customer_ID[i] ), character )
)
);
Column( dt, :Customer_ID[i] )[i] = :Customer_ID[i];
);
Re: 열 수식에서 "for 루프"를 사용할 수 있습니까?안녕하세요 Nelson, 그것에 대해 이야기하고 있지만 내가 찾고 있는 것이 아닙니다.
당신이 제공한 스크립트는 나에게 아래와 같은 것을 제공하고 있습니다. 그리고 내가 찾고 있는 것은 빨간 트링글 안에 있습니다.

또한 c1, c2 .... 넣는 방법이 아니라 1, 2, 3 ... 일종의 카운터를 넣는 것보다, 변경이 생기자마자 1씩 증가합니다.
도움이 되셨나요?
Re: 열 수식에서 "for 루프"를 사용할 수 있습니까?다음은 원하는 열을 만드는 몇 가지 방법입니다.

Names Default To Here( 1 );
dt = New Table( "custIDs",
New Column( "Customer_ID", character, values( {"c1", "c1", "c1", "c2", "c2", "c3", "c3", "c3"} ) )
);
dt << New Column( "Or like this" );
counter = 0;
For( i = 1, i <= N Rows( dt ), i++,
If(
i == N Rows( dt ),
counter++;
:or like this[i] = counter;,
:Customer_ID[i] != :Customer_ID[i + 1],
counter++;
:or like this[i] = counter;
)
);
// or
dt << New Column( "or like this using formula",
formula(
x = .;
If( Row() == 1, counter = 0 );
If( :Customer_ID != Lag( :Customer_ID, -1 ) | Row() == N Rows( Current Data Table() ),
counter++;
x = counter;
);
x;
)
);
Re: 열 수식에서 "for 루프"를 사용할 수 있습니까?예, 두 번째 유형의 솔루션을 찾고 있었습니다.
감사해요.