切片熊猫dtype对象从结束不工作

时间:2017-06-06 23:53:19

标签: python pandas

我有一个数据框:enter image description here

其中series_id是dtype对象。我跑的时候:

df['dataType'] = df['series_id'].apply(lambda x: x[-1:])

什么都没发生,但是当我跑步时:

 df['dataType'] = df['series_id'].apply(lambda x: x[19:20])

它会创建正确的dataType列。

为什么我无法从对象的末尾切片,但从一开始就有效?

2 个答案:

答案 0 :(得分:0)

当然答案是最后的额外空格,:

 df['dataType'] = df['series_id'].apply(lambda x: x.strip()[-1:])

.strip()会处理它。希望有所帮助。

答案 1 :(得分:0)

如果你只需要series_id的最后一个字符,你可以将它转换为str并从字符串中取出最后一个字符。添加条带以确保删除尾随空格。

df['dataType'] = df.series_id.str.strip().str[-1]