使用pandas自动替换数据的列名

使用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'}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值