我有以下数据框:

          TAN.SK    SHA.LO
A         0.05      0.01
S         0.04      0.44
D         0.08     -0.18

我希望新的df如下:
          TAN        SHA
A         0.05      0.01
S         0.04      0.44
D         0.08     -0.18

基本上从列名中删除
这就是我所尝试的:
df.rename(columns=lambda x: x.split('.')[0])

df.columns=df.split('.')[0]

第二种情况在.SK

最佳答案

DataFrame.rename()不会就地更改数据帧(默认情况下),因此您必须将其重新分配给:

In [134]: df = df.rename(columns=lambda x: x.split('.')[0])

In [135]: df
Out[135]:
    TAN   SHA
A  0.05  0.01
S  0.04  0.44
D  0.08 -0.18


In [139]: df.rename(columns=lambda x: x.split('.')[0], inplace=True)

In [140]: df
Out[140]:
    TAN   SHA
A  0.05  0.01
S  0.04  0.44
D  0.08 -0.18

08-04 08:08
查看更多