我经常使用这种创建或替换列并根据条件分配值的行:
df.loc[df['somecolumn'].str.endswith('_s'), 'somecolumn'] = '_sp'
我想做同样的事情,但对于索引列。我的具体问题是如何引用索引列?
df.loc[df.index.str.endswith('_s'), 'index column name?'] = '_sp'
我尝试使用 df.index.name,但它会创建一个新列而不是更改索引列中的值。
最佳答案
正如我在评论部分所说,您实际上不需要使用 index.str.endswith
直到严格来说它需要使用像开始 ^
这样的 anchor > 并以 $
结束,它应该为你做一份工作。
只考虑@Scott 的示例。
df.index.str.replace(r'_s$', '_sp', regex=True)
为了后代,我在这里保留这个答案..
关于python - 用 pandas 数据帧索引中的条件替换字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54830719/