python - 从数据框列值末尾删除字符

标签 python pandas dataframe

我的数据框具有以下值,我想删除最后一个字符,即 - 从所有行中删除。我该怎么做?

df:

Sn  URL
1   Sunil-
2   R-amesh-
3   Oxa--
4   --AB

我有以下功能,如何应用它?可以使用lambda吗?请帮忙?

def rchop(thestring, ending):
    if thestring.str.endswith(ending):
       return thestring[:-len(ending)]
    return thestring

df['URL'] = rchop(df['URL'], '-') -- not working

预期输出:

Sn  URL
1   Sunil
2   R-amesh
3   Oxa
4   --AB

最佳答案

我们可以使用Series.str.rstrip

In [16]: df['URL'] = df['URL'].str.rstrip('-')

In [17]: df
Out[17]:
   Sn      URL
0   1    Sunil
1   2  R-amesh
2   3      Oxa
3   4     --AB

关于python - 从数据框列值末尾删除字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45756236/

相关文章:

python - Mypy 拒绝使用 `type(name, (bases,), {})` 创建的类型对象

python - 尝试运行 kivy 设计器时出现 "No module named xpopup.file"错误

python - Cython 发出 'unnecessary' 警告

python - 有效地将函数并行应用于分组的 pandas DataFrame

python - 如何将pandas数据帧转换为具有rdd属性的pyspark数据帧?

python - 使用Python3.6以 "if ... is not None"结束input()

python - 旋转/旋转数据集的最佳方法

python - 如何在 Pandas 中设置第一列和第一行作为索引?

r - 如果一个数据框中的多个值重复多次,如何将它们替换为另一个数据框中的多个值

python根据行值添加一列