#python #pandas
#python #pandas
Вопрос:
я пытаюсь заменить строку на int в pandas, но я получаю эту ошибку, кто-нибудь знает, что я сделал не так?
print(self.df['verdeling'].str.split('/ ',expand=True))
ramen = pd.DataFrame(self.df['verdeling'].str.split('/ ',expand=True))
print(ramen)
ramen = ramen.iloc[:,0].replace({'twee delen':2,
'een deel':1,
'drie delen':3,})
# bijramen =self.df['verdeling'].str.split('/ ').get(1)
bijramen = ramen.iloc[:,1].replace({'een bovenlicht':1,
'twee bovenlichten':2,
'een onderlicht':1,
'teee onderlichte':2})
self.df['ramen'] = ramen
self.df['bijramen'] = bijramen
ошибка:
File "C:UsersinfoAppDataLocalPackagesPythonSoftwareFoundation.Python.3.8_qbz5n2kfra8p0LocalCachelocal-packagesPython38site-packagespandascoreindexing.py", line 873, in __getitem__
return self._getitem_tuple(key)
File "C:UsersinfoAppDataLocalPackagesPythonSoftwareFoundation.Python.3.8_qbz5n2kfra8p0LocalCachelocal-packagesPython38site-packagespandascoreindexing.py", line 1443, in _getitem_tuple
self._has_valid_tuple(tup)
File "C:UsersinfoAppDataLocalPackagesPythonSoftwareFoundation.Python.3.8_qbz5n2kfra8p0LocalCachelocal-packagesPython38site-packagespandascoreindexing.py", line 700, in _has_valid_tuple
raise IndexingError("Too many indexers")
pandas.core.indexing.IndexingError: Too many indexers
Комментарии:
1. Вы устанавливаете
ramen = ramen.iloc[:,0]
, а затем пытаетесь получить доступbijramen = ramen.iloc[:,1]
: это выглядит немного странно.2. спасибо @Timus, это действительно была проблема