python 替换数据框 pandas 中所有列的多个值

Vic*_*tro 3 python replace multiple-value pandas

下面是我的表格的示例。

数据框

下面是该表的代码:

d = {'1978': ['10k', '20000'],
    '1979': ['30k', '2M'],
    '1980': ['60000', '20k'],
    '1981': ['10000', '1M'],
    '1982': ['15000', '70k'],
    '1983': ['12k', '8M']}
df = pd.DataFrame(data=d)
Run Code Online (Sandbox Code Playgroud)

实际上,我正在工作的有 60 列和 200 行。然而,它的结构是相同的。

我的目标是对于许多列的所有行,将“000”替换为“k”,将“000000”替换为“M”。

所以输出应该是:

预期数据帧

如果有人可以与我分享代码以获得所需的输出,我将非常感激。

Who*_*ain 5

您可以使用pandas.DataFrame.replace字典作为参数并且regex=True

new_df = df.replace({'k':'000', "M": "000000"}, regex=True)
Run Code Online (Sandbox Code Playgroud)