마이닝 모델의 중첩 테이블 필터링(중급 데이터 마이닝 자습서)

 

적용 대상: SQL Server 2016 Preview

모델을 만들고 탐색한 후 고객 데이터의 하위 집합에 초점을 맞추기로 결정합니다. 예를 들어 특정 항목을 포함하는 바구니만 분석하거나 특정 기간 동안 아무 것도 구매하지 않은 고객에 대한 인구 통계를 분석할 수 있습니다.

Analysis Services 마이닝 모델에 사용 되는 데이터를 필터링 하는 기능을 제공 합니다. 이 기능은 다양 한 데이터를 사용 하 여 새 데이터 원본 뷰를 설정 해야 하기 때문에 유용 합니다. 기본 데이터 마이닝 자습서에서는 사례 테이블에 조건을 적용하여 플랫 테이블의 데이터를 필터링하는 방법을 배웠습니다. 이 태스크에서는 중첩 테이블에 적용되는 필터를 만듭니다.

중첩 테이블 및 사례 테이블에 대한 필터

Association 모델에 사용되는 데이터 원본 뷰와 같이 데이터 원본 뷰에 사례 테이블 및 중첩 테이블이 포함되어 있는 경우 사례 테이블의 값, 중첩 테이블에서의 값 존재 여부 또는 이 둘을 조합한 조건을 기준으로 필터링할 수 있습니다.

이 태스크에서는 먼저 Association 모델의 복사본을 만든 다음 사례 테이블에서 IncomeGroup 및 Region 특성을 기준으로 필터링할 수 있도록 해당 특성을 새 관련 모델에 추가합니다.

Association 모델의 복사본을 만들고 수정하려면

  1. 마이닝 모델 탭 SQL Server Data Tools(SSDT), 를 마우스 오른쪽 단추로 클릭는 연결 모델을 마우스 선택 새 마이닝 모델합니다.

  2. 에 대 한 모델 이름, 형식 Association Filtered합니다. 에 대 한 알고리즘 이름, 선택, Microsoft 연결 규칙합니다. 확인을 클릭합니다.

  3. Association Filtered 모델에 대 한 열에서 IncomeGroup 행을 클릭 하 고 값에서 변경 무시입력합니다.

다음으로 새 연결 모델의 사례 테이블에 대한 필터를 만듭니다. 모델에서 대상 지역에 있거나 대상 소득 수준을 가진 고객만 필터를 통과하게 됩니다. 그런 다음 두 번째 필터 조건 집합을 추가하여 시장 바구니에 하나 이상의 항목이 포함된 고객만 모델에 사용되도록 지정합니다.

마이닝 모델에 필터를 추가하려면

  1. 마이닝 모델 탭에서 모델 Association Filtered를 마우스 오른쪽 단추로 클릭 하 고 선택 모델 필터 설정합니다.

  2. 모델 필터 대화 상자의 마이닝 구조 열 입력란에서 표의 첫 행을 클릭합니다.

  3. 마이닝 구조 열 텍스트 상자에서 IncomeGroup 선택 합니다.

    입력란 왼쪽에 있는 아이콘이 변경되어 선택한 항목이 열임을 나타냅니다.

  4. 클릭는 연산자 선택 하 고 텍스트 상자는 = 목록에서 연산자입니다.

  5. 클릭 된 텍스트 상자 높은 상자에 합니다.

  6. 표에서 다음 행을 클릭합니다.

  7. 클릭 된 및/또는 표 형태 창 및 선택의 다음 행의 텍스트 상자 또는합니다.

  8. 마이닝 구조 열 텍스트 상자에서 IncomeGroup 선택 합니다. 에 텍스트 상자에서 보통합니다.

    만든 필터 조건이 자동으로 추가 됩니다는 텍스트 상자를 다음과 같이 표시 되어야 합니다.

    [IncomeGroup] = 'High' OR [IncomeGroup] = 'Moderate'

  9. 연산자는 기본값으로 그대로 두고 표에서 다음 행을 클릭 AND합니다.

  10. 에 대 한 연산자, 기본값을 그대로 두고 Contains합니다. 클릭 하 고 텍스트 상자입니다.

  11. 필터 대화 상자의 아래에 있는 첫 번째 행에서 마이닝 구조 열, 선택, 모델합니다.

  12. 에 대 한 연산자, 선택, IS NOT NULL합니다. 유지 된 텍스트 상자를 비워 합니다. 확인을 클릭합니다.

    필터 조건에는 의 텍스트 상자는 모델 필터 대화 상자가 중첩된 테이블에 새 조건을 포함 하도록 자동으로 업데이트 됩니다. 전체 식은

    [IncomeGroup] = 'High' OR [IncomeGroup] = 'Moderate' AND EXISTS SELECT * FROM [vAssocSeqLineItems] WHERE [Model] <> NULL).

  13. 확인을 클릭합니다.``

드릴스루를 사용하고 필터링된 모델을 처리하려면

  1. 마이닝 모델 탭을 마우스 오른쪽 단추로 클릭는 Association Filtered 모델을 마우스 선택 속성합니다.

  2. 변경 된 AllowDrillThrough 속성을 True합니다.

  3. 마우스 오른쪽 단추로 클릭는 Association Filtered 선택한 마이닝 모델을 프로세스 모델합니다.

  4. 클릭 새 모델을 배포 하는 오류 메시지에는 Analysis Services 데이터베이스입니다.

  5. 마이닝 구조 처리 대화 상자를 클릭 하 여 실행합니다.

  6. 처리가 완료 되 면 클릭 닫기 종료 하는 처리 진행률 대화 상자에서 선택한 닫기마이닝 구조 처리 대화 상자입니다.

Microsoft 일반 콘텐츠 트리 뷰어를 사용하여 NODE_SUPPORT에 대한 값을 확인함으로써 필터링된 모델에 원래 모델보다 적은 사례가 포함되어 있음을 확인할 수 있습니다.

주의

방금 만든 중첩 테이블 필터는 중첩 테이블에 하나 이상의 행이 있는지 여부만 확인하지만 특정 제품이 있는지 여부를 확인하는 필터 조건을 만들 수도 있습니다. 예를 들어 다음과 같은 필터를 만들 수 있습니다.

[IncomeGroup] = 'High' AND  
 EXISTS (SELECT * FROM [<nested table name>] WHERE [Model] = 'Water Bottle' )   

이 문은 사례 테이블의 고객을 물병을 구매한 고객으로만 제한함을 의미합니다. 그러나 중첩 테이블 특성의 수는 잠재적으로 제한이 없기 때문에 Analysis Services는 선택 가능한 값 목록을 제공하지 않습니다. 대신 정확한 값을 입력해야 합니다.

클릭할 수 쿼리 편집 필터 식을 수동으로 변경 합니다. 그러나 필터 식의 임의 부분을 수동으로 변경하면 표가 비활성화되어 텍스트 편집 모드에서만 필터 식 작업을 수행할 수 있습니다. 표 편집 모드를 복원하려면 해당 필터 식을 지우고 다시 시작해야 합니다.

경고


중첩 테이블 필터에는 LIKE 연산자를 사용할 수 없습니다.

단원의 다음 태스크

연결 ( 중급 데이터 마이닝 자습서 ) 예측

관련 항목:

모델 필터 구문 및 예(Analysis Services - 데이터 마이닝)
마이닝 모델에 대한 필터(Analysis Services - 데이터 마이닝)