Pandas数据帧列Nam中特殊字符的处理

2024-09-24 22:26:56 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在导入具有以下列名的excel工作表:

N° Pedido
   1234
   6424
   4563

列名有一个特殊字符(°)。因此,我无法将其与其他数据帧合并或重命名列。我没有收到任何错误信息,只是名字保持不变。我该怎么办?

这是我正在使用的代码和数据帧的结果:

    import pandas as pd
    import numpy as np
    # Importando Planilhas
    CRM = pd.ExcelFile(r'C:\Users\Michel\Desktop\Relatorio de 
    Vendas\relatorio_vendas_CRM.xlsx', encoding= 'utf-8')
    protheus = pd.ExcelFile(r'C:\Users\Michel\Desktop\Relatorio de 
    Vendas\relatorio_vendas_protheus.xlsx', encoding= 'utf-8')
    #transformando em Data Frame
    df_crm = CRM.parse('190_pedido_export (33)')
    df_protheus = protheus.parse('Relatorio de Pedido de Venda')]
    # Transformando Campos em float o protheus
    def turn_to_float(x):
    return np.float(x)

    df_protheus["TES"] = df_protheus["TES"].apply(turn_to_float)
    df_protheus["Qtde"] = df_protheus["Qtde"].apply(turn_to_float)
    df_protheus["Valor"] = df_protheus["Valor"].apply(turn_to_float)
    #Tirando Tes de não venda do protheus
    # tirando valores com código errado 6
    df_protheus_1 = df_protheus[df_protheus.TES != 513.0]
    df_protheus_2 = df_protheus_1[df_protheus_1.TES != 576.0]

    **df_crm.columns = df_crm.columns.str.replace('N° Pedido', 'teste')
    df_crm.columns**


    Orçamento Origem    N° Pedido   Nº Pedido ERP   Estabelecimento Tipo de 
    Pedido  Classificação(Tipo) Aplicação   Conta   CNPJ/CPF    Contato ... 
    Aprovação Parcial   Antecipa Entrega    Desconto da Tabela de Preço 
    Desconto do Cliente Desconto Informado  Observações Observações NF  Vl 
    Total Bruto Vl Total    Completo
    0   20619.0 23125   NaN Optitex 1 - Venda   NaN Industrialização/Revenda    
    XAVIER E ARAUJO LTDA ME 7970626000170   NaN ... N   N   0   0   0   

注意,我对粗体部分使用了其他代码,结果相同:

#renomeando tabela para dar Merge
#df_crm['proc'] = df_crm['N\xc2\xb0 Pedido']

#df_crm['N Pedido'] = df_crm['N° Pedido']
#df_crm.drop('N° Pedido',inplace=True,axis=1)
#df_crm

#df_crm['N Pedido'] = df_crm['N° Pedido']
#df.drop('N° Pedido',inplace=True,axis=1)
#df_crm

#df_crm_1 = df_crm.rename(columns={"N°Pedido": "teste"})
#df_crm_1

Tags: columnstodfdefloattesturnpd