한 열에서 여러 행 값 바꾸기가 제대로 작동하지 않습니다.안녕하세요 JMP 커뮤니티,
나는 아주 이상한 한 가지 문제가 발생했습니다. 내 코드는 다음과 같습니다.
dt_temp = data table("aaaa");
dt_temp << Summary( Group( :Column1,:Column2), Freq( "None" ), Weight( "None" ),output table name( "summary" ) );
data table("summary") << select where (:N rows >= 2 & !contains(:Column1,"AA") & !contains(:Column1,"BB") );
rows = dt_temp << get selected rows;
dt_temp:Column3[rows] = "";
//Column(dt_temp, "Column3")[rows] = "";
이 코드를 실행하면 행에도 [10, 11, 20, 21]과 같은 값이 있지만 column3의 최종 결과는 다릅니다. 선택한 행을 가져 오는 대신 다른 행 (행 1, 5, ...)을 대체합니다.
이 문제를 해결하도록 도와 주시겠습니까?
스크립팅Re : 한 열에서 여러 행 값 바꾸기가 제대로 작동하지 않습니다.원래 데이터 테이블 또는 요약 테이블의 값을 바꾸려고합니까? 이것은 나를 위해 잘 작동하는 것 같습니다.
Names Default To Here(1);
dt_temp = Open("$SAMPLE_DATA/Big Class.jmp");
dt_temp << Summary(Group(:age, :sex), Freq("None"), Weight("None"), output table name( "summary" ));
data table("summary") << Select Where(:N Rows >= 3 & !Contains(:sex, "M"));
rows = dt_temp << Get Selected Rows;
show(dt_temp:name[rows]);
dt_temp:name[rows] = "";
show(dt_temp:name[rows]);Re : 한 열에서 여러 행 값 바꾸기가 제대로 작동하지 않습니다.안녕 자르 모,
제안 해 주셔서 감사합니다.하지만 저에게는 효과가없는 것 같습니다.
명확히하기 위해 요약 테이블의 조건을 기반으로 원래 테이블의 값을 바꾸고 싶습니다.
나는 당신의 코드도 실행하려고 시도했으며 결과는 다음과 같습니다.
요약 테이블에서 선택한 행 :

기본 테이블에서 선택한 행. 15 개의 행이 선택되었지만 각 그룹의 첫 번째 행만 대체되었습니다.

Re : 한 열에서 여러 행 값 바꾸기가 제대로 작동하지 않습니다.어떤 버전의 JMP를 사용하고 있습니까? 나는 15.2.1을 사용하고 있으며 내 예제가 잘 작동하는 것 같습니다.

Re : 한 열에서 여러 행 값 바꾸기가 제대로 작동하지 않습니다.Jmp Pro 12.2.0, 64 비트 버전을 사용하고 있습니다. 참조 용 로그 파일 :

행 번호 (-1)를 표시하는 로그 파일은 유효하지 않지만 행을 표시하면 그런 행이 없습니다.
Re : 한 열에서 여러 행 값 바꾸기가 제대로 작동하지 않습니다.이것을 바탕으로 데이터 테이블 첨자 셀 값을 설정하는 방식은 JMP13에서 사용할 수 있습니다.
루핑을 피하려고하지만 15보다 이전 버전의 JMP에 액세스 할 수 없으므로이 방법이 작동하는지 확실하지 않습니다.
Names Default To Here(1);
dt_temp = Open("$SAMPLE_DATA/Big Class.jmp");
dt_summary = dt_temp << Summary(Group(:age, :sex), Freq("None"), Weight("None"), output table name( "summary" ));
dt_summary << Select Where(:N Rows >= 3 & !Contains(:sex, "M"));<BR />
//get rows which should be set to empty
rows = dt_temp << Get Selected Rows;
//get all values in name column
colValues = dt_temp:name << get values;
show(colValues);
//set selected rows in the colValues list to ""
colValues[rows] = "";
show(colValues);
dt_temp:name << Set Values(colValues);