Python의 주성분 분석 예
Python의 주성분 분석 예
주성분 분석(PCA)은 데이터 차원 축소에 일반적으로 사용되는 방법으로 고차원 데이터의 차원을 낮은 차원으로 줄이고 데이터 변형 정보를 최대한 많이 유지할 수 있습니다. Python은 PCA 구현을 위한 많은 라이브러리와 도구를 제공합니다. 이 기사에서는 예제를 사용하여 Python에서 sklearn 라이브러리를 사용하여 PCA를 구현하는 방법을 소개합니다.
먼저 데이터 세트를 준비해야 합니다. 이 기사에서는 150개의 샘플 데이터가 포함된 Iris 데이터 세트를 사용합니다. 각 샘플에는 4개의 특징 값(꽃받침의 길이와 너비, 꽃잎의 길이와 너비)과 레이블(꽃받침의 유형)이 있습니다. 아이리스 꽃). 우리의 목표는 이 네 가지 기능의 차원을 줄이고 가장 중요한 주요 구성 요소를 찾는 것입니다.
먼저 필요한 라이브러리와 데이터 세트를 가져와야 합니다.
from sklearn.datasets import load_iris from sklearn.decomposition import PCA import matplotlib.pyplot as plt iris = load_iris() X = iris.data y = iris.target
이제 PCA 객체를 생성하고 적용할 수 있습니다.
pca = PCA(n_components=2) X_pca = pca.fit_transform(X)
여기서 PCA 개체는 n_comComponents=2로 설정합니다. 이는 처리된 데이터만 2차원 평면에 표시하려고 함을 의미합니다. 원본 데이터 X에 fit_transform을 적용하고 처리된 데이터 세트 X_pca를 얻습니다.
이제 결과를 플롯할 수 있습니다.
plt.scatter(X_pca[:, 0], X_pca[:, 1], c=y) plt.xlabel('Component 1') plt.ylabel('Component 2') plt.show()
이 그림에서는 축소된 2차원 공간에서 Iris 데이터세트의 분포를 볼 수 있습니다. 각 점은 붓꽃의 표본을 나타내며, 색상은 붓꽃의 종류를 나타냅니다.
이제 주요 구성 요소가 무엇인지 살펴보겠습니다.
print(pca.components_)
이렇게 하면 "Component 1"과 "Component 2"라는 두 개의 벡터가 출력됩니다.
[[ 0.36158968 -0.08226889 0.85657211 0.35884393]
[-0.65653988 -0.72971237 0.1757674 0.07470647]]
각 요소는 원본의 기능을 나타냅니다. 데이터 가중치. 즉, 주성분을 원래 특징을 선형적으로 결합하는 데 사용되는 벡터로 생각할 수 있습니다. 결과의 각 벡터는 단위 벡터입니다.
각 구성 요소별로 설명되는 데이터의 변동량도 확인할 수 있습니다.
print(pca.explained_variance_ratio_)
이 출력은 각 구성요소가 설명하는 데이터의 분산량 비율을 표시합니다.
[0.92461621 0.05301557]
이 두 구성 요소가 데이터 분산의 총 94%를 설명하는 것을 볼 수 있습니다. 이는 데이터의 특성을 매우 정확하게 포착할 수 있음을 의미합니다.
한 가지 주의할 점은 PCA가 원본 데이터에서 모든 기능을 제거한다는 것입니다. 따라서 특정 기능을 유지해야 하는 경우 PCA를 적용하기 전에 수동으로 제거해야 합니다.
Python에서 sklearn 라이브러리를 사용하여 PCA를 구현하는 방법의 예입니다. PCA는 모든 유형의 데이터에 적용할 수 있으며 고차원 데이터에서 가장 중요한 구성 요소를 찾는 데 도움이 됩니다. 이 기사의 코드를 이해할 수 있다면 자신의 데이터 세트에 PCA를 적용할 수도 있습니다.
위 내용은 Python의 주성분 분석 예의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











Pandas는 다양한 유형의 데이터 파일을 쉽게 읽고 처리할 수 있는 강력한 데이터 분석 도구입니다. 그중 CSV 파일은 가장 일반적이고 일반적으로 사용되는 데이터 파일 형식 중 하나입니다. 이 기사에서는 Pandas를 사용하여 CSV 파일을 읽고 데이터 분석을 수행하는 방법을 소개하고 구체적인 코드 예제를 제공합니다. 1. 필요한 라이브러리 가져오기 먼저 아래와 같이 필요할 수 있는 Pandas 라이브러리 및 기타 관련 라이브러리를 가져와야 합니다. importpandasasspd 2. Pan을 사용하여 CSV 파일 읽기

일반적인 데이터 분석 방법: 1. 비교 분석 방법 3. 교차 분석 방법 5. 원인 및 영향 분석 방법 8. , 주성분 분석 방법 9. 분산 분석 방법 10. 매트릭스 분석 방법. 세부 소개: 1. 비교 분석 방법: 둘 이상의 데이터를 비교 분석하여 차이점과 패턴을 찾습니다. 2. 구조 분석 방법: 전체의 각 부분을 비교 분석하는 방법 3. 교차 분석 방법. , 등.

Python에서 sqrt() 함수의 사용법 및 코드 예 1. sqrt() 함수의 기능 및 소개 Python 프로그래밍에서 sqrt() 함수는 math 모듈에 있는 함수이며, 그 기능은 의 제곱근을 계산하는 것입니다. 숫자. 제곱근은 자신을 곱한 숫자가 그 숫자의 제곱과 같다는 것을 의미합니다. 즉, x*x=n이면 x는 n의 제곱근이 됩니다. sqrt() 함수는 프로그램에서 제곱근을 계산하는 데 사용할 수 있습니다. 2. Python, sq에서 sqrt() 함수를 사용하는 방법

"데이터 과학자가 95%의 시간을 사용하는 11가지 기본 차트"의 마지막 목록에 이어 오늘은 데이터 과학자가 95%의 시간을 사용하는 11가지 기본 분포를 소개하겠습니다. 이러한 분포를 마스터하면 데이터의 특성을 더 깊이 이해하고 데이터 분석 및 의사 결정 중에 더 정확한 추론과 예측을 할 수 있습니다. 1. 정규 분포 정규 분포는 가우스 분포라고도 알려져 있으며 연속 확률 분포입니다. 평균(μ)을 중심으로 하고 표준 편차(σ)를 너비로 하는 대칭 종 모양 곡선을 갖습니다. 정규분포는 통계, 확률론, 공학 등 여러 분야에서 중요한 응용 가치를 갖고 있습니다.

Python에서 이미지 처리 및 인식을 수행하는 방법 요약: 현대 기술로 인해 이미지 처리 및 인식이 여러 분야에서 중요한 도구가 되었습니다. Python은 풍부한 이미지 처리 및 인식 라이브러리를 갖춘 배우기 쉽고 사용하기 쉬운 프로그래밍 언어입니다. 이 기사에서는 이미지 처리 및 인식을 위해 Python을 사용하는 방법을 소개하고 구체적인 코드 예제를 제공합니다. 이미지 처리: 이미지 처리는 이미지 품질 향상, 이미지에서 정보 추출 등을 위해 이미지에 대한 다양한 작업 및 변환을 수행하는 프로세스입니다. Python의 PIL 라이브러리(Pi

시각화는 복잡한 데이터 패턴과 관계를 직관적이고 이해하기 쉬운 방식으로 전달하는 강력한 도구입니다. 이는 데이터 분석에서 중요한 역할을 하며 원시 데이터나 전통적인 수치 표현에서는 식별하기 어려운 통찰력을 제공합니다. 시각화는 복잡한 데이터 패턴과 관계를 이해하는 데 매우 중요합니다. 데이터의 정보를 공개하고 복잡한 데이터를 더욱 이해하기 쉽고 의미 있게 만드는 데 도움이 되는 가장 중요하고 꼭 알아야 할 11가지 차트를 소개합니다. 1. KSPlotKSPlot은 분포 차이를 평가하는 데 사용됩니다. 핵심 아이디어는 두 분포의 누적 분포 함수(CDF) 사이의 최대 거리를 측정하는 것입니다. 최대 거리가 작을수록 동일한 분포에 속할 가능성이 높아집니다. 따라서 주로 분포차이를 판단하기 위한 '시스템'으로 해석된다.

오늘날의 지능사회에서 머신러닝과 데이터 분석은 사람들이 대량의 데이터를 더 잘 이해하고 활용할 수 있도록 돕는 필수적인 도구입니다. 이러한 분야에서 Go 언어는 속도와 효율성으로 인해 많은 프로그래머들이 선택하는 프로그래밍 언어이기도 합니다. 이 글에서는 머신러닝과 데이터 분석에 Go 언어를 사용하는 방법을 소개합니다. 1. 기계 학습 생태계 Go 언어는 Python 및 R만큼 풍부하지 않습니다. 그러나 점점 더 많은 사람들이 Go 언어를 사용하기 시작하면서 일부 기계 학습 라이브러리 및 프레임워크는

ECharts 및 PHP 인터페이스를 사용하여 통계 차트의 데이터 분석 및 예측을 구현하는 방법 데이터 분석 및 예측은 데이터의 추세와 패턴을 이해하고 향후 결정을 위한 참고 자료를 제공하는 데 도움이 됩니다. ECharts는 PHP 인터페이스를 사용하여 데이터를 동적으로 로드하고 처리할 수 있는 풍부하고 유연한 차트 구성 요소를 제공하는 오픈 소스 데이터 시각화 라이브러리입니다. 본 글에서는 ECharts와 PHP 인터페이스를 기반으로 통계차트 데이터 분석 및 예측을 구현하는 방법을 소개하고, 제공합니다.
