Я занимаюсь классикой текста. У меня около 32K (спам & ветчины).Scikit: Удалите строку функций, если она есть во всех документах
import numpy as np
import pandas as pd
import sklearn.datasets as dataset
from sklearn.feature_extraction.text import CountVectorizer
from sklearn.feature_extraction.text import TfidfTransformer
from sklearn.naive_bayes import BernoulliNB
from sklearn.preprocessing import LabelEncoder
import re
from sklearn.feature_selection import SelectKBest
from sklearn.feature_selection import chi2
from sklearn.linear_model import SGDClassifier
from BeautifulSoup import BeautifulSoup
from sklearn.feature_extraction import text
from sklearn import cross_validation
from sklearn import svm
from sklearn.grid_search import GridSearchCV
from sklearn.feature_selection import VarianceThreshold
# Now load files from spam and ham
data = dataset.load_files("/home/voila/Downloads/enron1/")
xData = data.data
yData = data.target
print data.target_names
countVector = CountVectorizer(decode_error='ignore' , stop_words = 'english')
countmatrix = countVector.fit_transform(xData)
countermatrix
будет матрица с countermatrix[i][j]
представляет собой счетчик слова j
в документе i
Теперь я хочу, чтобы удалить все функции, где countermatrix[i][j] > 1
(означает слово слишком часто) присутствует в более чем 80% документов ,
Как это сделать?
Благодаря
Превосходно .. дайте мне попробовать .. Я приму ваш ответ. спасибо – voila
Не могли бы вы рассказать мне, что такое countmatrix> 1? – voila
@voila: Создает булеву матрицу той же формы, что и 'countermatrix', которая является' True', где соответствующая запись 'countermatrix' больше 1. – cfh