Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Пожалуйста, помогите разобраться в чем ошибка.

Кирилл Никонов Ученик (137), закрыт 4 года назад
Есть незамысловатый цикл:
print(dsm)
for c in dsm:
print('\n')
for t in dsm:
print(dsm[t][c], end=',')
t+=1
c+=1
Оба print-а успешно отображаются:

0 1 2 3 ...8 9 10 11
0 81 10309 402.64 4.0 ...0.39 WEST 107 STREET JOANNE 1
1 82 10310 398.64 NaN ...0.39 LEXINGTON AVENUE JOANNE 0
2 83 10311 398.64 NaN ...0.39 WEST 94 STREET JOANNE 0
3 84 0 398.64 NaN ...0.39 WEST 68 STREET CHERYL 0
4 85 10313 403.64 511.0 ...0.39 EAST 18 STREET JOANNE 1
5 86 10314 398.64 NaN ...0.02 WEST 119 STREET CHERYL 0
6 87 10315 398.64 0.0 ...0.02 AMSTERDAM AVENUE CHERYL 0
7 88 10316 398.64 NaN ...0.02 AMSTERDAM AVENUE JOANNE 0
8 89 10317 400.64 2.0 ...0.02 WEST 143 STREET JOANNE 1

[9 rows x 12 columns]

81,10309,402.64,4.0,YES,-1.0,Active,STATEN ISLAND,0.39,WEST 107 STREET,JOANNE,1,

82,10310,398.64,nan,YES,-1.0,Active,STATEN ISLAND,0.39,LEXINGTON AVENUE,JOANNE,0,

83,10311,398.64,nan,YES,-1.0,Active,STATEN ISLAND,0.39,WEST 94 STREET,JOANNE,0,

84,0,398.64,nan,YES,-2.0,Active,MANHATTAN,0.39,WEST 68 STREET,CHERYL,0,

85,10313,403.64,511.0,YES,-1.5,Active,MANHATTAN,0.39,EAST 18 STREET,JOANNE,1,

86,10314,398.64,nan,NO,nan,Active,BRONX,0.02,WEST 119 STREET,CHERYL,0,

87,10315,398.64,0.0,NO,nan,Inactive,BRONX,0.02,AMSTERDAM AVENUE,CHERYL,0,

88,10316,398.64,nan,NO,nan,Active,BRONX,0.02,AMSTERDAM AVENUE,JOANNE,0,

89,10317,400.64,2.0,NO,-1.0,Active,BRONX,0.02,WEST 143 STREET,JOANNE,1,

Но, за тем, компиляция прерывается сообщением об ошибке:

---------------------------------------------------------------------------
KeyError Traceback (most recent call last)
in ()
29 print('\n')
30 for t in dsm:
---> 31 print(dsm[t][c], end=',')
32 t+=1
33 c+=1

1 frames
/usr/local/lib/python3.6/dist-packages/pandas/core/indexes/base.py in get_value(self, series, key)
4373 try:
4374 return self._engine.get_value(s, k,
-> 4375 tz=getattr(series.dtype, 'tz', None))
4376 except KeyError as e1:
4377 if len(self) > 0 and (self.holds_integer() or self.is_boolean()):

pandas/_libs/index.pyx in pandas._libs.index.IndexEngine.get_value()

pandas/_libs/index.pyx in pandas._libs.index.IndexEngine.get_value()

pandas/_libs/index.pyx in pandas._libs.index.IndexEngine.get_loc()

pandas/_libs/hashtable_class_helper.pxi in pandas._libs.hashtable.Int64HashTable.get_item()

pandas/_libs/hashtable_class_helper.pxi in pandas._libs.hashtable.Int64HashTable.get_item()

KeyError: 9
Лучший ответ
Black Afgano Просветленный (22272) 4 года назад
Выложите на Git этот нотебук, с листа не читается совсем.
Black AfganoПросветленный (22272) 4 года назад
print(dsm[t][c], end=',') — судя по всему, нет запрашиваемого ключа
Кирилл НиконовУченик (137) 4 года назад
Я пофиксил это. Ошибка была в том что c > 8, но, вообще, странно, почему цикл "for" сам не фиксит такое?...
Black Afgano Просветленный (22272) Проблема глубже: for c in dsm — это перебор по названию столбцов, но и for t in dsm — то же самое.
Остальные ответы
Похожие вопросы