안녕하십니까,
나는 2개의 매우 난처한 문제가 있습니다.
1) 아래의 간단한 for 루프의 경우 단일 출력에 대해 충족되는 3가지 조건이 있습니다. 수동으로 보고 그래프를 통해 8가지 조합이 모두 데이터에 실제로 존재하는지 확인했습니다.그러나 이것은 X1 열의 모든 셀에 x1, x2 및 x3만 채워지는 한쪽으로 나타납니다. 예를 들어 x2 항목에는 할당된 항목 수가 두 배입니다. 하위 집합을 통한 추가 검사에서 A1, B1 및 C1 열은 실제로 동일한 공유에 있는 x2 및 x4에 대해 충족됩니다. 모든 열은 동일한 데이터 및 모델링 유형을 공유합니다.
나는 또한 무슨 일이 일어날지 보기 위해 항목을 두 배로 수집하는 항목을 차단했습니다. 그런 다음 항목은 예를 들어 x2로 번들됩니다.
For( i = 1, i <= N Rows ( dt ), i++,
If( :A1[i] == "a1" & :B1[i] == "b1" & :C1[i] == "c1", :X1[i] = "x1";
:A1[i] == "a1" & :B1[i] == "b1" & :C1[i] == "c2", :X1[i] = "x2";
:A1[i] == "a1" & :B1[i] == "b2" & :C1[i] == "c1", :X1[i] = "x3";
:A1[i] == "a1" & :B1[i] == "b2" & :C1[i] == "c2", :X1[i] = "x4";
:A1[i] == "a2" & :B1[i] == "b1" & :C1[i] == "c1", :X1[i] = "x3";
:A1[i] == "a2" & :B1[i] == "b1" & :C1[i] == "c2", :X1[i] = "x4";
:A1[i] == "a2" & :B1[i] == "b2" & :C1[i] == "c1", :X1[i] = "x1";
:A1[i] == "a2" & :B1[i] == "b2" & :C1[i] == "c2", :X1[i] = "x2";
);
);
2) &를 사용하여 셀에 값을 할당하여 코드를 줄이면 "L-값이 아닌 개체에 할당을 시도하는 중" 오류가 발생합니다. 이것은 내 코드를 줄이고 여러 개의 다른 루프를 가지지 않으려는 시도입니다.아래는 3개의 기준과 3개의 출력의 예입니다.
For( i = 1, i <= N Rows ( dt ), i++,
If( :A1[i] == "a1" & :B1[i] == "b1" & :C1[i] == "c1", :X1[i] = "x1" & :Y1[i] = "y1" & :Z1[i] = "z2";
:A1[i] == "a1" & :B1[i] == "b1" & :C1[i] == "c2", :X1[i] = "x2" & :Y1[i] = "y3" & :Z1[i] = "z3";
:A1[i] == "a1" & :B1[i] == "b2" & :C1[i] == "c1", :X1[i] = "x3" & :Y1[i] = "y2" & :Z1[i] = "z1";
:A1[i] == "a1" & :B1[i] == "b2" & :C1[i] == "c2", :X1[i] = "x4" & :Y1[i] = "y4" & :Z1[i] = "z4";
:A1[i] == "a2" & :B1[i] == "b1" & :C1[i] == "c1", :X1[i] = "x3" & :Y1[i] = "y1" & :Z1[i] = "z1";
:A1[i] == "a2" & :B1[i] == "b1" & :C1[i] == "c2", :X1[i] = "x4" & :Y1[i] = "y2" & :Z1[i] = "z4";
:A1[i] == "a2" & :B1[i] == "b2" & :C1[i] == "c1", :X1[i] = "x1" & :Y1[i] = "y4" & :Z1[i] = "z2";
:A1[i] == "a2" & :B1[i] == "b2" & :C1[i] == "c2", :X1[i] = "x2" & :Y1[i] = "y3" & :Z1[i] = "z3";
);
);
모든 지침을 주시면 감사하겠습니다. 고급에 도움을 주셔서 감사합니다!