将我的数据框的列名的一部分转换为大写

Convert to upper case just a subset of the colum names of my dataframe

假设我有一个包含 10 列的数据框,我想将第 3 列到第 7 列的名称转换为大写。我该怎么做?

谢谢!

将新的大写col列表附加到未更改的部分并将其分配给数据框

df = pd.DataFrame(columns=['a','b','c'])
df.columns = list(df.columns[0:1]) + [x.upper() for x in df.columns[1:]]

输出列为a, B, C

如何upper()列名/headers基于它们的索引一个或多个):

df = pd.DataFrame({'test1234':[100,50,10], 'abc_!-?':[200,75,5], 'Column3':[50,300,60]})
df
index test1234 abc_!-? Column3
0 100 200 50
1 50 75 300
2 10 5 60
df.columns = [x.upper() if x in df.columns[0:2] else x for x in df.columns]
df
index TEST1234 ABC_!-? Column3
0 100 200 50
1 50 75 300
2 10 5 60

如何upper() 列名称/header基于它们的名称一个或多个):

df = pd.DataFrame({'col1':[100,50,10], 'col2':[200,75,5], 'col3':[50,300,60]})
df
index col1 col2 col3
0 100 200 50
1 50 75 300
2 10 5 60
df.columns = [x.upper() if x in df[['col1','col2']].columns else x for x in df.columns]
df
index COL1 COL2 col3
0 100 200 50
1 50 75 300
2 10 5 60