通过将旧值连接到另一个值来更新所有值数据框熊猫

时间:2018-11-21 10:47:15

标签: python pandas dataframe

我是python和pandas的初学者。我正在尝试更新数据框的值。 我有

    Name
1   A
2   B
3   C

,我想将数据框更改为

    Name
1   A_1
2   B_1
3   C_1

为所有值添加“ _1”

感谢帮助

3 个答案:

答案 0 :(得分:0)

df = pd.DataFrame({"Name": ["A", "B", "C"]})
df["Name"] = df.Name.apply(lambda x: str(x)+"_1")
print(df)

输出:

  Name
0  A_1
1  B_1
2  C_1

答案 1 :(得分:0)

最简单的内置功能:

使用dataFrame.add

>>> df
  Name
0    A
1    B
2    C

>>> df = df.Name.add("_1")
>>> df
0    A_1
1    B_1
2    C_1

使用map

将替换值的字典转换为“系列”替换方法:

>>> df
  Name
0    A
1    B
2    C


>>> df['Name'] = df['Name'].map({'A': 'A_1', 'B': 'B_1', 'C': 'C_1'})
>>> df
  Name
0  A_1
1  B_1
2  C_1

使用replace方法:

>>> df.Name.replace(['A', 'B', 'C'], ['A_1', 'B_1', 'C_1'], inplace=True)
>>> df
  Name
0  A_1
1  B_1
2  C_1

答案 2 :(得分:0)

您可以使用简单的字符串concat:

df['Name'] = df['Name']+'_1'

print(df)
  Name
1  A_1
2  B_1
3  C_1