我有以下df:
TAN.SK SHA.LO
A 0.05 0.01
S 0.04 0.44
D 0.08 -0.18
Run Code Online (Sandbox Code Playgroud)
我希望新的df如下:
TAN SHA
A 0.05 0.01
S 0.04 0.44
D 0.08 -0.18
Run Code Online (Sandbox Code Playgroud)
基本上从列名中删除.SK和.LO
这是我尝试过的:
df.rename(columns=lambda x: x.split('.')[0])
df.columns=df.split('.')[0]
Run Code Online (Sandbox Code Playgroud)
第二种情况适用于 df.index
DataFrame.rename()不会更改DataFrame(默认情况下),因此您必须将其分配回来:
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
Run Code Online (Sandbox Code Playgroud)
要么
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
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1671 次 |
| 最近记录: |