Python 从电子表格访问数据框中的多索引时出错
这很难确定,但似乎我无法在数据框中使用多索引,该数据框是通过Python 从电子表格访问数据框中的多索引时出错,python,python-2.7,pandas,Python,Python 2.7,Pandas,这很难确定,但似乎我无法在数据框中使用多索引,该数据框是通过pandas.read\u excel从电子表格读取的。我已将所有文件放在一个文件夹中 产生一个错误 Traceback (most recent call last): File "mindex.py", line 14, in <module> print(('dkdkd', 'kdkd') in df.index) File "/path/venv/local/lib/python2.7/site-pa
pandas.read\u excel
从电子表格读取的。我已将所有文件放在一个文件夹中
产生一个错误
Traceback (most recent call last):
File "mindex.py", line 14, in <module>
print(('dkdkd', 'kdkd') in df.index)
File "/path/venv/local/lib/python2.7/site-packages/pandas/indexes/multi.py", line 947, in __contains__
self.get_loc(key)
File "/path/venv/local/lib/python2.7/site-packages/pandas/indexes/multi.py", line 1538, in get_loc
if lead_key else (0, len(self)))
File "/path/venv/local/lib/python2.7/site-packages/pandas/indexes/multi.py", line 1444, in slice_locs
return super(MultiIndex, self).slice_locs(start, end, step, kind=kind)
File "/path/venv/local/lib/python2.7/site-packages/pandas/indexes/base.py", line 2879, in slice_locs
start_slice = self.get_slice_bound(start, 'left', kind)
File "/path/venv/local/lib/python2.7/site-packages/pandas/indexes/multi.py", line 1415, in get_slice_bound
return self._partial_tup_index(label, side=side)
File "/path/venv/local/lib/python2.7/site-packages/pandas/indexes/multi.py", line 1460, in _partial_tup_index
raise TypeError('Level type mismatch: %s' % lab)
TypeError: Level type mismatch: dkdkd
我不知道这两个数据帧之间有什么不同。两者都有相同的df.d类型
<代码>测向索引在两个屏幕上看起来相同。谁能告诉我为什么访问第一个索引失败
我想我知道为什么现在会这样。我在
pandas.indexes.base.Index.is\u type\u兼容中打印出要比较的类型
is_type_compatible: kind=string inferred_type=unicode
显然,pandas.read\u excel()
正在将字符串读取为unicode,并且这些字符串的类型与简单的“字符串”不兼容
这里的索引错误消息可以提供更多信息。仅仅告诉我“级别类型不匹配”几乎没有提供任何有用的信息 我想我知道为什么现在会这样。我在
pandas.indexes.base.Index.is\u type\u兼容中打印出要比较的类型
is_type_compatible: kind=string inferred_type=unicode
显然,pandas.read\u excel()
正在将字符串读取为unicode,并且这些字符串的类型与简单的“字符串”不兼容
这里的索引错误消息可以提供更多信息。仅仅告诉我“级别类型不匹配”几乎没有提供任何有用的信息
$ python --version
Python 2.7.6
$ python -c 'import pandas; print pandas.__version__'
0.18.0
is_type_compatible: kind=string inferred_type=unicode