如何在python中将字符串值替换为模式?

如何在python中将字符串值替换为模式?,python,Python,我有一个代码和输出如下 df_train['SES'].value_counts() 输出为: 2 9186 1 5832 3 3279 ? 446 4 383 Name: SES, dtype: int64 我想将?替换为模式,在本例中模式为2,我编写了以下代码,在第一次查看输出时,代码似乎工作正常,但当我再次运行代码查看值计数时,我发现它为?分配了另一个2。以下是代码和输出: df_train['SES'].replace('?',2

我有一个代码和输出如下

df_train['SES'].value_counts()
输出为:

2    9186


1    5832


3    3279


?     446


4     383


Name: SES, dtype: int64
我想将
替换为模式,在本例中模式为2,我编写了以下代码,在第一次查看输出时,代码似乎工作正常,但当我再次运行代码查看值计数时,我发现它为
分配了另一个2。以下是代码和输出:

df_train['SES'].replace('?',2, inplace= True)
再次运行代码检查值计数,发现两个不同的2

df_train['SES'].value_counts()
输出为:

2    9187


1    5832


3    3279


2     445


4     383


Name: SES, dtype: int64

您可以看到有两个不同的2,请给出任何建议,为什么会发生这种情况,以及如何解决问题?

尝试这样做:
df\u train['SES']。替换('?','2',inplace=True)
。请注意,
2
是一个文本,请尝试执行此操作:
df_train['SES']。替换('?','2',inplace=True)
。请注意,
2
现在是一个文本