假设我有以下数据:
dfData = pd.DataFrame({
'A1':['1','2'],
'B1':['1','2'],
'C1':['1','2'],
'D1':['1','2']
})
print(dfData)
A1 | B1 | C1 | D1 |
---|---|---|---|
0 | 1 | 1 | 1 |
1 | 2 | 2 | 2 |
我设置了以下 map :
dfMap = pd.DataFrame({
'dfDataCol':['A1','B1','C1',''],
'NewCol' :['A2','B2','C2','D2']
})
print(dfMap)
dfDataCol | NewCol |
---|---|
A1 | A2 |
B1 | B2 |
C1 | C2 |
我将其转换为词典,并将名称映射为:
dict1 = dfMap.set_index('dfDataCol').to_dict()['NewCol']
dfData.columns = dfData.columns.map(dict1)
我得到了:
A2 | B2 | C2 | NaN |
---|---|---|---|
0 | 1 | 1 | 1 |
1 | 2 | 2 | 2 |
如果没有词典条目,如何保留原始标题:
A2 | B2 | C2 | D1 |
---|---|---|---|
0 | 1 | 1 | 1 |
1 | 2 | 2 | 2 |