我有一个高维词 - 双克频率矩阵(1100 x 100658,dtype = int)。作为列名,我使用行索引作为行索引来设置word-bi-grams(如'','和',...),其中包含 myPandaDataFrame.columns = word-bi-grams 例如熟练度(高,中,低) myPandaDataFrame.columns.set_index([ 'PROFICIENCY'],就地=真,降=真)Sklearn和PCA。为什么是max n_row == max n_components?
然后我做
from sklearn.decomposition import PCA
x = 500
pcax = PCA(n_components=x)
pcax.fit(myPandaDataFrame)
PCA(copy=True, n_components=x, whiten=False)
existing_2dx = pcax.transform(myPandaDataFrame)
existing_df_2dx = pandas.DataFrame(existing_2dx)
existing_df_2dx.index = myPandaDataFrame.index
existing_df_2dx.columns = ['PC{0}'.format(i) for i in range(x)]
我的第一个问题,我认为这是错误的,是我最多只能设置1100个组件。这是现有行的数量。我对PCA非常陌生,并尝试过几个例子,但似乎我无法为我的矩阵做出正确的选择。 有人看到我在做什么错误,或者有人可以链接到与我的问题类似的教程/示例。我会很开心:)
与问候
您可能可以在http://datascience.stackexchange.com/获得更多帮助。 – Thanos
谢谢,我会尽力而为。 – user6131832
做了任何答案的帮助? – Stefan