有没有一种方法可以重命名重复标题并选择右列python?

时间:2019-08-26 05:28:34

标签: python pandas dataframe jupyter-notebook

我有一个较大的电子表格文件(.xlsx),正在使用python pandas处理。我注意到标题重复,我想重命名特定的列而不应用其余的列。

Jack | SPORT | UNI | SHOP | TOTAL | nan | Li | SPORT | UNI | SHOP | nan |

JULY | 1000  | 200 | 300  | 1500  | NaN |JULY| NaN   | NaN | 1000 | nan | 

上表是我从excel文件中提取的数据。我希望输出是这样的:

Month | Amount | UNI | SHOP | TOTAL | Li |Month | SPORT | TOWN | SHOP |

JULY  | 1000   | 200 | 300  | 1500  | Nan|JULY  | NaN   | NaN  | 1000 |

问题: 1)有没有一种方法可以选择具有与iloc类似概念的特定列,但可以选择列?目的是在不干扰其他重复项的情况下重命名特定列。

2)如何删除最后一个NaN列?

1 个答案:

答案 0 :(得分:0)

您始终可以使用 .columns()设置列的名称。示例如下:

data = {'a': [1,2,3,4], 'b': [3,2,2,1], 'c': [None, 'test', 'hi']}
df = pd.DataFrame(data)

   a  b     c
0  1  3  None
1  2  2  test
2  3  2    hi
3  4  1  None

df.columns = ['C1', 'C2' ,'C3']

   C1  C2    C3
0   1   3  None
1   2   2  test
2   3   2    hi
3   4   1  None

如果要删除列,可以使用 drop()

res = df.drop(columns=['C3'])
   C1  C2
0   1   3
1   2   2
2   3   2
3   4   1