- 此问题在此处已有答案**:
Pandas- How can I eliminate trailing whitespace in the index(1个答案)
5天前关闭。
这篇文章是编辑和提交审查5天前。
我有一个带字符串索引的 Dataframe
1
Abai Abai.1
Native to Indonesia
Region Borneo
Language family Austronesian
ISO 639-3 None (mis)
Glottolog abai1241
奇怪的是,当我尝试使用loc访问"Native to"索引时
df.loc["Native to"]
它返回KeyError
。但是当我尝试使用相同的方法访问"Language family"索引时,它工作并返回Series对象。
In [5]: df.loc["Language family"]
Out[5]:
1 Austronesian
Name: Language family, dtype: object
其他有空格的索引也是如此,而其他没有空格的索引则工作正常。
经过一点调查,我怀疑"Native to"字符串中的空格字符,下面的代码块将对此进行解释。
# I found that
df.loc[df.index.str.contains("Native")]
# returns this dataframe
# 1
# Native to Indonesia
# while the code below (notice the additional space)
df.loc[df.index.str.contains("Native ")]
# returns an empty Dataframe
# meanwhile this code (notice the same additional space)
df.loc[df.index.str.contains("Language ")]
# returns
# 1
# Language family Austronesian
有没有人能指出我在这里遇到的问题是什么?这是字符串本身造成的还是Pandas身上的虫子什么的?
- 编辑**原来它不是由尾随空格引起的,因为在
.strip()
方法之后,它仍然产生相同的错误。
- 编辑**原来它不是由尾随空格引起的,因为在
1条答案
按热度按时间pn9klfpd1#
您可能有悬空空格。请使用以下命令清理索引: