【发布时间】:2021-08-16 07:10:58
【问题描述】:
问题陈述: 我想找到 explain_variance_ratio.sum() 首先达到 1 的 n_components。结束循环并追加到列表中。
X.shape
(200, 6395)
这是我的代码,需要一些建议。代码效率不高,因为我需要设置一个常量。
最新编辑:
res=[]
for i in range(0,X.shape[1],50):
svd=TruncatedSVD(i)
svd.fit(X)
if svd.explained_variance_ratio_.sum() > 0.95 and svd.explained_variance_ratio_.sum() <1:
res.append([i,svd.explained_variance_ratio_.sum()])
break
else:
continue
break
res
[[200, 0.9999999999999998]]
【问题讨论】:
-
请复制粘贴您的代码,而不是发布代码图片
-
使用
break停止循环 -
代码在哪里“设置一个常数”
-
@shree.pat18 编辑感谢
-
使用 break 或将此循环设为函数并在条件为真时返回
标签: python loops for-loop conditional-statements