여보세요,
하나의 열을 사용하여 일치하는 셀을 선택한 다음 선택한 행을 사용하여 옆에있는 열의 평균 수를 찾는 스크립트를 작성하려고하지만 그 방법을 잘 모르겠습니다. 다음은 내가 작업하고있는 예제 테이블입니다 (마지막 평균 cloumn은 스크립트가 필요한 것입니다).
| 일치하는 열 : | 번호: | 그룹화 된 숫자의 평균 |
| 에이 | 2 | 삼 |
| 에이 | 4 | 삼 |
| 비 | 2 | 4 |
| 비 | 4 | 4 |
| 비 | 6 | 4 |
| 씨 | 삼 | 6 |
| 씨 | 6 | 6 |
| 씨 | 9 | 6 |
| 디 | 2 | 2 |
| 디 | 2 | 2 |
이것에 접근하는 방법에는 여러 가지가 있지만 가장 쉬운 방법은 사용하는 것입니다.
테이블 ==> 요약
요약을 수행 한 다음 요약 데이터를 원래 테이블로 다시 병합합니다. 다음은 예제 데이터를 사용하여이를 수행하는 간단한 스크립트입니다.
Names Default To Here( 1 );
// Create an example data table
dt = New Table( "Example",
Add Rows( 10 ),
New Column( "Matching Column",
Character,
"Nominal",
Set Values( {"a", "a", "b", "b", "b", "c", "c", "c", "d", "d"} )
),
New Column( "Numbers",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [2, 4, 2, 4, 6, 3, 6, 9, 2, 2] )
)
);
// Pause so one can see the original table
wait(5);
// Summarize the data
dtSum = dt << Summary(
invisible,
Group( :Matching Column ),
Mean( :Numbers ),
Freq( "None" ),
Weight( "None" ),
statistics column name format( "column" ),
Link to original data table( 0 ),
output table name( "Means" )
);
// Adjust items in summary data to allow for proper merging
dtSum << delete columns( "N Rows" );
dtSum:Numbers << Set Name( "Average of grouped numbers" );
// Add the summary data to the original data table
dt << Update( With( dtSum ), Match Columns( :Matching Column = :Matching Column ) );
// Clean up the environment
Close( dtSum, nosave );이를 위해 스크립트가 필요하지 않습니다. 그만큼 열 평균 () 수식 편집기의 함수는 그룹화 열을 통해 평균을 계산합니다.
JMP 자체의 모습을 볼 수 있도록 게시 한 예제에서 만든 데이터 테이블을 첨부했습니다.
