Question

Je posté ma question sur un débordement de pile, mais il quelqu'un a suggéré que je devrais essayer ici. Ce que je fais maintenant :)

OK, d'abord à mes données. J'ai une matrice de fréquence mot-bi-gramme (1100 x 100.658, DTYPE = int), où les 5 premières colonnes contiennent des informations sur le document. Ainsi, chaque ligne est un document et chaque colonne un mot-bi-gramme comme (de-la, sur le, et qui, ...). Je veux visualiser les données, mais avant de le faire, je veux réduire la dimension. Donc, je pensais que je le fais avec l'APC de sklearn. D'abord, je mis les étiquettes de colonne avec

myPandaDataFrame.columns = word-bi-grams

alors je supprimé des colonnes de doc, parce que je veux voir quel genre d'information que je peux obtenir si je ne regarde que la compétence.

del existing_df['SUBSET']
del existing_df['PROMPT']
del existing_df['L1']
del existing_df['ESSAYID']

alors je mis la colonne de compétence pour être l'indice avec

myPandaDataFrame.columns.set_index(['PROFICIENCY'], inplace=True, drop=True)

et puis je l'ai fait

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)]

Mais avec cette mise en œuvre, je ne peut mettre 1100 n_components au maximum. Ceci est le nombre de documents (lignes). Cela me rend suspect. J'ai essayé quelques exemples / tutoriels, mais je ne peux pas faire les choses. Donc, quelqu'un que je l'espoir peut me aider à trouver ce que je fais mal? Si serait également très heureux d'un bon exemple / tutoriel qui peut me aider avec mon problème. Merci.

Avec mes meilleures salutations.

Était-ce utile?

La solution

lignes Étant donné m de n colonnes, je pense qu'il est naturel de penser des données en n dimensions. Cependant, la dimension inhérente d des données peut être plus faible; d <= n. d est le rang de la m x n matrice que vous pourriez former à partir des données. La dimensionnalité des données peut être réduit à d sans perte d'information, même. La même chose vaut en fait pour les lignes, ce qui est moins intuitive mais vrai; d <= m. Ainsi, il est toujours judicieux de réduire dimensionnalité à quelque chose <= d car il n'y a pas de perte; nous réduisons généralement beaucoup plus loin. C'est pourquoi il ne vous laissera pas réduire plus que le nombre de lignes.

Licencié sous: CC-BY-SA avec attribution
scroll top