dt2의 고유한 값 목록을 기반으로 dt1에서 행을 선택하고 제외하는 방법은 무엇입니까?그래서 저는 dt1을 사용하여 t-테스트 분석(ChartID에 의한 Chamber의 의미)을 실행한 다음 모든 pvalue의 결합된 데이터 테이블 dt2를 만듭니다. 이것을 p<=0.05인 행으로 필터링한 다음 이러한 낮은 pValues의 고유하고 고유한 목록을 만들고 이를 사용하여 낮은 PValues만으로 차트를 다시 구성하려고 합니다.
원래 dt1에 다시 연결하려고 시도하는 중입니다. 작동하지 않는 것 같은 최종 선택.
또한 선택, 제외, 소스 dt에 다시 결합하는 더 좋은 방법이 있으면 알려주십시오. 요약, 연관 배열을 시도했습니다.
//creating the table of pValues
dt2 = Report( ow[1] )["Means Comparisons", "Comparisons for all pairs using Tukey-Kramer HSD","Ordered Differences Report"][Table Box( 1 )] << Make Combined Data Table;
dt2 << set name( "pValue PairWise by Channel Tukey")
//select and exclude high pVals
dt2 << select where("p-Value"n > 0.05);
dt2 << exclude;
//get list of remaining Unique Chart_ID's
summarize(uniqueVals=by(CHART_ID));
//trying to select on the original source data
dt1 << select where( contains( uniqueVals, :CHART_ID));
//then need to invert and exclude해석학스크립팅Re: dt2의 고유한 값 목록을 기반으로 dt1에서 행을 선택하고 제외하는 방법은 무엇입니까?uniqueVals 변수는 dt1과 동일한 데이터 유형을 가져야 하므로 변경할 항목을 선택할 수 있습니다. 숫자 데이터 유형으로 Chart_ID가 필요하지 않은 경우 이 경우 dt1의 문자로 변경할 가능성이 높습니다.
Re: dt2의 고유한 값 목록을 기반으로 dt1에서 행을 선택하고 제외하는 방법은 무엇입니까?@jthi
따라서 요약을 수행한 후 Chart_ID는 Numeric Continuous인 반면 원본 소스 데이터 dt1 Chart_ID는 숫자 Nominal이고 pvalue 테이블 dt2는 Character Nominal인 것처럼 보입니다.
//extra, just to look at the data
dtUnique = New Table( "uniqueVals less 0.05");
dtUnique << New Column( "ChannelID", Values(uniqueVals));

Re: dt2의 고유한 값 목록을 기반으로 dt1에서 행을 선택하고 제외하는 방법은 무엇입니까?@brady_brady
좋은 질문입니다. 따라서 내 소스 데이터(dt1)에는 Chart_ID가 Numeric Nominal로 있습니다. 차트를 생성하고 t-Test를 실행한 다음 결합 데이터 테이블(dt2)을 출력하면 Chart_ID 열이 문자 명목상이 됩니다.
Re: dt2의 고유한 값 목록을 기반으로 dt1에서 행을 선택하고 제외하는 방법은 무엇입니까?내 첫 번째 추측은 문자와 숫자 값이 일치하지 않는 것입니다.
다음은 Big Class의 예입니다.
Names Default To Here(1);
dt1 = Open("$SAMPLE_DATA/Big Class.jmp");
ow = Oneway(Y(:height), X(:age), All Pairs(1));
dt2 = Report(ow)["Means Comparisons", "Comparisons for all pairs using Tukey-Kramer HSD","Ordered Differences Report"][Table Box( 1 )] << Make Combined Data Table;
dt2 << set name( "pValue PairWise by Channel Tukey");
dt2 << select where(:"p-Value"n > 0.05);
dt2 << exclude;
summarize(dt2, uniqueVals=by(:level)); //check out the type of :level column, could be character
//convert to numbers OR you could convert values in dt1 to characters
For( i = 1, i <= N Items(uniqueVals ), i++,
uniqueVals[i] = Num(uniqueVals[i] )
);
dt1 << select where(Contains(uniqueVals, :age));Re: dt2의 고유한 값 목록을 기반으로 dt1에서 행을 선택하고 제외하는 방법은 무엇입니까?우연히 차트 ID가 숫자입니까? Summarize의 by() 결과는 원래 그룹 식별자가 숫자인 경우에도 문자열 목록입니다. 이렇게 하면 해당 목록 요소(다시 말하지만 문자열)가 원래 테이블(숫자)의 값과 일치하지 않습니다.
??
건배,
브래디