PowerBI+Python으로 주성분 분석 & 폴더 분석

개시하다
파이톤과 R 등 프로그래밍 언어에서 통계 해석의 프로그램 라이브러리는 매우 풍부하지만 프로그래밍을 통해 해석하는 것은 매우 번거롭다.
PowerBI+Python 주성분 분석에서 파이톤을 통해 PowerBI의 조회 처리를 분석하고 PowerBI를 통해 시각화했다.이번에는 설문지의 데이터를 예로 들어 주성분 분석을 통해 2축으로 요약하고 분류 분석을 통해 그룹을 나누려고 한다.
샘플 데이터
다음은 산타 모자의 색깔 인상을 평가한 설문조사.

설문지 질문(일부)
여기서 우리는 SD법라는 형용사로 인상 조사를 하고 데이터를 수집한다.

응답 데이터(샘플)
조사 결과에 따라 다음 Excel 데이터를 준비합니다.

응답자
색상
붙임성이 좋다
재미있다
밝다/어둡다
활발하다
무겁다
강력하다
1
청색
5
3
4
3
5
4
1
노랑, 황색
5
6
6
6
3
4
1
빨강
5
6
6
6
4
6
1
초록색
4
4
5
4
4
4
1
검정색
3
3
2
2
6
4
1
백색
4
5
6
4
2
4
2
청색
6
4
4
3
5
4
2
노랑, 황색
5
6
6
7
3
5
2
빨강
6
6
6
6
4
6
2
초록색
4
4
5
4
5
5
2
검정색
3
3
2
2
6
5
2
백색
4
5
7
4
2
4
데이터 읽기
데이터를 가져올 때부터 설문지의 Excel 데이터를 읽습니다.


질의 편집
  • 데이터 변환을 클릭하여 Power Query 편집기를 시작합니다.
  • 메뉴를 클릭하여 Python 스크립트 변환
  • 파이썬 스크립트를 설명합니다.(python 라이브러리의sklearn,pandas 사용)
  • import numpy as np
    import pandas as pd
    from sklearn.decomposition import PCA
    from sklearn.cluster import KMeans
    
    dataset2=dataset.drop(dataset.columns[[0,1]],axis=1)
    X=dataset2.values
    pca = PCA()
    pca.fit(X)
    pca_point = pca.transform(X)
    dataset['PC1']=pca_point[:,0]
    dataset['PC2']=pca_point[:,1]
    evr=pd.DataFrame(data=pca.explained_variance_ratio_,  columns={'explained_variance_ratio'}, dtype='float')
    evr['PC No.']=evr.index+1
    components=pd.DataFrame(data=pca.components_,  columns=dataset2.columns, dtype='float')
    components['PC No.']=components.index+1
    
    km = KMeans(n_clusters=2,            # クラスターの個数
                init='random',           # セントロイドの初期値をランダムに設定  default: 'k-means++'
                n_init=10,               # 異なるセントロイドの初期値を用いたk-meansの実行回数 default: '10'
                max_iter=300,            # k-meansアルゴリズムの内部の最大イテレーション回数  default: '300'
                tol=1e-04,               # 収束と判定するための相対的な許容誤差 default: '1e-04'
                random_state=0)          # セントロイドの初期化に用いる乱数発生器の状態
    y_km = km.fit_predict(pca_point)
    dataset['Cluster']=y_km
    
    del dataset2
    
    
    

    4.evr는 각 성분의 기여율, 확인치를 설정합니다.(각 성분의 영향력 표시)

    5. 데이터셋의 테이블을 클릭하여 파이썬이 분석한 데이터를 읽습니다.(주성분 1, 주성분 2, 묶음 번호의 열을 추가했다.)

    6. 홈페이지>닫기 및 클릭
    보고서 작성
  • 분산도 아이콘을 클릭하여 대시보드 위에 놓습니다.
  • X축에 PC1의 평균을, Y축에 PC2의 평균을 설정합니다.
  • 범례를 Cluster로 설정하고 색상으로 자세히 설정합니다.
  • 시각화 > 형식 > 클래스를 사용하고 데이터 탭을 표시합니다.

  • 분석 결과
    컬렉션 수를 2로 설정하면 이렇게 그룹화됩니다.

    요약된 X축(제1주성분), Y축(제2주성분)은 분석 결과에 어떤 의미를 더하면 이해하기 쉽다.
    총결산
    PowerBI와 파이톤을 이용해 설문지 데이터에서 주성분 분석과 클러스터 분석을 진행했다.
    참고 자료
  • SD법 대신 인상평가축을 결정하는 평가망격법
  • k-means의 가장 좋은 집계수를 연구하는 방법
  • 좋은 웹페이지 즐겨찾기