如何替换数据框中行中的特定字符串字符?

时间:2017-05-23 17:05:28

标签: python

我有df我需要更改NAME列中的某些字符。我必须删除GIC_部分,并用空格替换中间的BBEG。所以,例如GIC_GBNPBBEGIN应转向GBNP IN

NAME             LANGUAGE
GIC_GBNPBBEGIN      EN
GIC_WFMBBEGAU       EN
GIC_NVGBBEGHPL      EN
GIC_BBAMPRXTPKTPT   EN
GIC_2430BBEGTT      ZH
GIC_KCMBBEGIN       EN
GIC_BBAMPRXKPR      EN

我尝试过。替换BBEG替换空格,但数据不会改变:

df['NAME'] = df['NAME'].replace('BBEG',' ')

这是我试图摆脱GIC_部分:

df['NAME'] = df['NAME'].str.strip('GIC_')

此外,必须删除不包含BBEG的行。

1 个答案:

答案 0 :(得分:0)

首先,您可以使用以下命令删除名称中包含'BBEG'的行:

 .promo {
    background-color: rgb(52, 132, 172);
    color: white;
    font-weight: 700;
    line-height: 200%;
    text-align: center;
}

.promo > .overlay {
  padding: 50px;
}
.promo:hover > .overlay {
    background-color:#000;
    opacity:0.5;
}

然后你可以用 NAME 执行字符串替换:

df = df[df.NAME.str.contains("BBEG")]

您将获得如下所示的数据框:

bla["NAME"] = bla["NAME"].map(lambda x: x.replace("GIC_", "").replace("BBEG", " "))