Tôi cố gắng thực hiện phân tích thành phần chính đơn giản với matplotlib.mlab.PCA nhưng với các thuộc tính của lớp tôi không thể có được một giải pháp sạch cho vấn đề của mình. Dưới đây là một ví dụ:Ví dụ cơ bản cho PCA với matplotlib
Nhận được một số dữ liệu giả trong 2D và bắt đầu PCA:
from matplotlib.mlab import PCA
import numpy as np
N = 1000
xTrue = np.linspace(0,1000,N)
yTrue = 3*xTrue
xData = xTrue + np.random.normal(0, 100, N)
yData = yTrue + np.random.normal(0, 100, N)
xData = np.reshape(xData, (N, 1))
yData = np.reshape(yData, (N, 1))
data = np.hstack((xData, yData))
test2PCA = PCA(data)
Bây giờ, tôi chỉ muốn để có được các thành phần chính như vectơ trong tọa độ ban đầu của tôi và âm mưu chúng như mũi tên vào dữ liệu của tôi.
Cách nhanh chóng và sạch sẽ để đến đó là gì?
Cảm ơn, Tyrax
lớn, cảm ơn. Đó là những gì tôi đang tìm kiếm. – Tyrax
ý nghĩa của hằng số 1.618 là gì? nó đến từ đâu ? – joaquin
@joaquin: Khoảng [tỷ lệ vàng] của nó (http://en.wikipedia.org/wiki/Golden_ratio). Bạn có thể, tất nhiên, chọn bất kỳ hằng số nào bạn thích, nhưng nó thường có vẻ tốt (http://en.wikipedia.org/wiki/Golden_ratio#Painting). – unutbu