使用pandas自动替换数据的列名
import pandas as pd
from setting import cols1
def auto_replace_feat_name(file_path):
"""
自动替换特征名称
:param file_path:
:return:
"""
df = pd.read_csv(file_path)
try:
df = df.drop('Unnamed: 0', axis=1)
except:
print('没有,哈哈哈哈哈哈')
columns = df.columns.to_list()
for i, value in enumerate(columns):
for k in list(cols1.keys()):
if value in cols1[k]:
columns[i] = k
cols1.pop(k)
df.columns = columns
return df
if __name__ == '__main__':
file_path = r'F:\Users\Administrator\Desktop\科研机\normal2\合并F4\2020013_flight.csv'
df = auto_replace_feat_name(file_path=file_path)
print(df)
cols1的内容如下
cols1 = {'FCC Time': 'FCC Time,F1,feature1,时间',
'Pressure Alt': 'F3,feature3,Pressure Alt',
'IAS': 'IAS,F4,feature4,速度',
'GCS Time': 'F6,feature6,GCS Time',
'Throttle': 'Throttle,F7,feature7,节风门位置',
'Rev': 'Rev,F8,feature8,TCU转速',
'AirBoxPres': 'AirBoxPres,F9,feature9,空气盒压力',
'AmbientPres': 'AmbientPres,F10,feature10,大气压力',
'AirBoxTemp': 'AirBoxTemp,F11,feature11,空气盒温度',
'ServoLevel': 'ServoLevel,F12,feature12,尾气门舵机位置',
'SetPres': 'SetPres,F13,feature13,空气盒压力设定值',
'AdjTemp': 'AdjTemp,F14,feature14,调整温度',
'AdjPres': 'AdjPres,F15,feature15,调整压力',
'Red Lamp': 'Red Lamp,F16,feature16,红色告警灯',
'Orange Lamp': 'Orange Lamp,F17,feature17,橙色告警灯',
'CHT2': 'CHT2,F18,feature18,缸头温度1',
'CHT3': 'CHT3,F19,feature19,缸头温度2',
'Oil Temp': 'Oil Temp,F20,feature20,滑油温度',
'Inlet Temp': 'Inlet Temp,F21,feature21,空气温度',
'Oil Level': 'Oil Level,F22,feature22,滑油水平',
'Oil Press': 'Oil Press,F23,feature23,滑油压力',
'EGT1': 'EGT1,F24,feature24,排气温度1',
'EGT2': 'EGT2,F25,feature25,排气温度2',
'EGT3': 'EGT3,F26,feature26,排气温度3',
'EGT4': 'EGT4,F27,feature27,排气温度4',
'Temp5': 'F28,feature28,Temp5',
'Temp6': 'F29,feature29,Temp6',
'Turbo State': 'Turbo State,F30,feature30,涡轮状态',
'Ignition State': 'Ignition State,F31,feature31,点火状态开关',
'Temp3': 'F32,feature32,Temp3',
'Temp4': 'F33,feature33,Temp4',
'1# FuelTank': 'F34,feature34,1# FuelTank',
'2# FuelTank': 'F35,feature35,2# FuelTank',
'MainFuel Alarm': 'F36,feature36,MainFuel Alarm',
'Fuel Temp': 'Fuel Temp,F37,feature37,油温',
'Fuel Press': 'Fuel Press,F38,feature38,油压',
'Pump State': 'F39,feature39,Pump State',
'MainPump Cur': 'MainPump Cur,F40,feature40,主油泵电流',
'AuxPump Cur': 'AuxPump Cur,F41,feature41,副油泵电流',
'Temp1': 'F42,feature42,Temp1',
'Temp2': 'F43,feature43,Temp2',
'CPU Usage': 'F44,feature44,CPU Usage',
'Frm Count': 'F45,feature45,Frm Count',
'Gen TempA': 'feature48,feature48,Gen TempA',
'Gen TempB': 'feature49,feature49,Gen TempB',
'Fuel Time': 'feature50,feature50,Fuel Time'}