Python 如何动态地找到PCA的Matlab代码中给出的数字分量?
在以下链接中,主成分分析参数的固定数量是预定义的,但应动态定义为Matlab代码。这怎么可能 如何动态找到主成分的数量,如Matlab代码中给出的:Python 如何动态地找到PCA的Matlab代码中给出的数字分量?,python,matlab,pca,Python,Matlab,Pca,在以下链接中,主成分分析参数的固定数量是预定义的,但应动态定义为Matlab代码。这怎么可能 如何动态找到主成分的数量,如Matlab代码中给出的: [coeff,score,~,~,explained] = pca(train); sm = 0; no_components = 0; for k = 1:size(explained,1) sm = sm+explained(k); if sm <= 99.4029 no_compo
[coeff,score,~,~,explained] = pca(train);
sm = 0;
no_components = 0;
for k = 1:size(explained,1)
sm = sm+explained(k);
if sm <= 99.4029
no_components= no_components+1;
end
end
no_components
[coeff,score,~,~,explained]=pca(训练);
sm=0;
无_分量=0;
对于k=1:尺寸(解释为1)
sm=sm+k;
如果sm与我用MatLab和python得到的解释变量有微小的变化,则解决方法如下:
[x,y] = train.shape
pca = PCA(n_components=(x-1))
varPca = pca.fit(train)
explainedVariance = pca.explained_variance_ratio_*100
sm = 0
no_components = 0
for k in range(0, x-1):
sm = sm+explainedVariance[k]
if sm <= 99.4029:
no_components= no_components+1
print(no_components)
[x,y]=train.shape
pca=pca(n_分量=(x-1))
varPca=pca.配合(列车)
解释方差=主成分分析。解释方差比*100
sm=0
无组件=0
对于范围(0,x-1)内的k:
sm=sm+解释方差[k]
如果sm在询问Python或Matlab方面的问题?你的问题不是很清楚。是的,应该是Python,而Python应该是Python?您的问题是“如何在Python中使用PCA?”?我不能确切地理解您试图做什么。您的问题是什么?这里的组件数量取决于我想要在python代码中解释的变量