我知道我可以重命名单个pandas.DataFrame列:
drugInfo.rename(columns = {'col_1': 'col_1_new_name'}, inplace = True)
Run Code Online (Sandbox Code Playgroud)
但是我想在不知道名称的情况下重命名一个列(基于它的索引 - 虽然我知道字典没有它).我想像这样重命名第1列:
drugInfo.rename(columns = {1: 'col_1_new_name'}, inplace = True)
Run Code Online (Sandbox Code Playgroud)
但是在DataFrame.columns dict中没有'1'条目,因此没有重命名.我怎么能实现这个目标?
EdC*_*ica 16
应该管用:
drugInfo.rename(columns = {list(drugInfo)[1]: 'col_1_new_name'}, inplace = True)
Run Code Online (Sandbox Code Playgroud)
例:
In [18]:
df = pd.DataFrame({'a':randn(5), 'b':randn(5), 'c':randn(5)})
df
Out[18]:
a b c
0 -1.429509 -0.652116 0.515545
1 0.563148 -0.536554 -1.316155
2 1.310768 -3.041681 -0.704776
3 -1.403204 1.083727 -0.117787
4 -0.040952 0.108155 -0.092292
In [19]:
df.rename(columns={list(df)[1]:'col1_new_name'}, inplace=True)
df
Out[19]:
a col1_new_name c
0 -1.429509 -0.652116 0.515545
1 0.563148 -0.536554 -1.316155
2 1.310768 -3.041681 -0.704776
3 -1.403204 1.083727 -0.117787
4 -0.040952 0.108155 -0.092292
Run Code Online (Sandbox Code Playgroud)
索引到dataframe columns属性可能更具可读性:
df.rename(columns={df.columns[1]:'col1_new_name'}, inplace=True)
Run Code Online (Sandbox Code Playgroud)
所以对你来说:
drugInfo.rename(columns = {drugInfo.columns[1]: 'col_1_new_name'}, inplace = True)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12790 次 |
| 最近记录: |