У меня есть категорический набор данных, который я пытаюсь преобразовать в числовой формат. Я попробовал общее горячее кодирование, но это привело к огромным размерам. Поэтому я ограничиваю свою кодировку 8 верхними категориями в каждом параметре.
Так что я перебираю каждый столбец. Но я получаю сообщение об ошибке в data_prep_text.i.value_counts.
for i in data_prep_text.columns:
if len(data_prep_text[i].unique())>7:
top8=[j for j in data_prep_text.i.value_counts(ascending=False.head(8)).index]
for label in top8:
data_prep_text[label]=np.where(data_prep_text[i]==label,1,0)
else:
data_prep_text[i]=0
Это ошибка, с которой я сталкиваюсь:
AttributeError Traceback (most recent call last)
<ipython-input-56-e25949bef086> in <module>
1 for i in data_prep_text.columns:
2 if len(data_prep_text[i].unique())>7:
----> 3 top8=[j for j in data_prep_text.i.value_counts(ascending=False.head(8)).index]
4 for label in top8:
5 data_prep_text[label]=np.where(data_prep_text[i]==label,1,0)
~/anaconda3_501/lib/python3.6/site-packages/pandas/core/generic.py in __getattr__(self, name)
4374 if self._info_axis._can_hold_identifiers_and_holds_name(name):
4375 return self[name]
-> 4376 return object.__getattribute__(self, name)
4377
4378 def __setattr__(self, name, value):
AttributeError: 'DataFrame' object has no attribute 'i'
'' '
Если япринимает «Соседство». Код не принимает значение i и делает его похожим на data_prep_text.Neighborhood.value_counts.