Полный новичок здесь!
Я следую учебному пособию по майнингу текстов через LDA для jupyter:
http://nbviewer.jupyter.org/github/sekhansen/text-mining-tutorial/blob/master/tutorial_notebook.ipynb
В этом уроке у меня есть документ .txt с:
data.columns
Index(['president', 'speech', 'year'], dtype='object')
Однако, сделав несколько шагов дальше, я пытаюсь переключить колонку «речь» на (предполагаемые) темы, найденные через LDA. Этот код используется в учебнике:
data = data.drop('speech',1)
for i in range(ldaobj.K): data['T' + str(i)] = dt[:,i]
data.to_csv("final_output.csv",index=False)
(я переключил xrange()
на range()
, учитывая, что я использую Python 3)
Теперь, когда я запускаю это, это дает мне:
ValueError Traceback (most recent call last)
<ipython-input-31-45755ac70972> in <module>()
----> 1 data = data.drop('speech',1)
2 for i in range(ldaobj.K): data['T' + str(i)] = dt[:,i]
3 data.to_csv("final_output.csv",index=False)
/anaconda3/lib/python3.6/site-packages/pandas/core/generic.py in drop(self,
labels, axis, index, columns, level, inplace, errors)
2528 for axis, labels in axes.items():
2529 if labels is not None:
-> 2530 obj = obj._drop_axis(labels, axis, level=level,
errors=errors)
2531
2532 if inplace:
/anaconda3/lib/python3.6/site-packages/pandas/core/generic.py in
_drop_axis(self, labels, axis, level, errors)
2560 new_axis = axis.drop(labels, level=level,
errors=errors)
2561 else:
-> 2562 new_axis = axis.drop(labels, errors=errors)
2563 dropped = self.reindex(**{axis_name: new_axis})
2564 try:
/anaconda3/lib/python3.6/site-packages/pandas/core/indexes/base.py in
drop(self, labels, errors)
3742 if errors != 'ignore':
3743 raise ValueError('labels %s not contained in axis'
%
-> 3744 labels[mask])
3745 indexer = indexer[~mask]
3746 return self.delete(indexer)
ValueError: labels ['speech'] not contained in axis
Я не был уверен, достаточно ли просто ошибки, поэтому выложил все, чтобы быть уверенным.
Кто-нибудь из вас знает, почему появляется эта ошибка?