Feb-23-2021, 03:09 PM
Hi,
How can I reindex columns? I get an error that says "ValueError: Length mismatch: Expected axis has 18 elements, new values have 5 elements"
The excel file is attached.
How can I reindex columns? I get an error that says "ValueError: Length mismatch: Expected axis has 18 elements, new values have 5 elements"
The excel file is attached.
import pandas as pd import getpass import sys import datetime from ftplib import FTP_TLS import sys user_id = getpass.getuser() # Read Download and Dealers data = pd.read_csv('C:/Users/'+ user_id +'/Desktop/Portable Script/Download_Report_Teleservices.csv',sep=";") dealers = pd.read_csv('C:/Users/'+ user_id +'/Desktop/Portable Script/Teleservices_Support.csv',engine='python',sep=";") data.head() data = data.reindex(['Número do ponto de serviço autorizado','ID','VIN','Data de criação','Escalado em']) data.columns = ['Local_ID','ID bilhete','Chassis','Entrada','Escalado'] # Add Telefone data["Telefone"]=1 # Add current date column data['Data Envio'] = pd.to_datetime('today').strftime("%d/%m/%Y") data dealers # Merge, remove extra columns, data_merged = data.merge(dealers,how='left', left_on='Local_ID',right_on='Código') data_merged data_merged = data_merged.loc[:,["Telefone","Local","ID bilhete","Chassis","Entrada","Escalado", "Data Envio"]] data_merged.columns = ['Telefone', 'Instalações', 'ID bilhete', 'Chassis', 'Entrada', 'Escalado', 'Data Envio'] # create today name now = datetime.datetime.now() Nday = str(now.day).zfill(2) Nmonth = str(now.month).zfill(2) Nyear = now.year name = "Teleservices" + "_" + str(Nyear)+ "_" +str(Nmonth)+ "_" +str(Nday) # Save file data_merged.to_csv('C:/Users/'+ user_id +'/Desktop/Portable Script/Teleservices_V2/' + name + '.csv',sep=";",index=False,encoding='utf-8-sig') #data_merged.to_csv('C:/Users/rfcr/Rigor/Caetano Retail - Organização/1 - Baviera/5 - Power BI/Teleservices/Daily Tickets/' + name + '.csv',sep=";",index=False,encoding='utf-8-sig') #Login to FTP (TLS secure) ftp = FTP_TLS() ftp.set_debuglevel(2) ftp.connect('ftp.gruposalvadorcaetano.pt', port=21) ftp.login(user='cretail.csi', passwd='cSvJCasuo2kzTH') # Open File file = open('C:/Users/'+ user_id +'/Desktop/Portable Script/Teleservices_V2/' + name + '.csv','rb') # Change directory in FTP ftp.cwd('/CCENTER/IN') # Upload file to FTP with correct name ftp.storbinary('STOR ' + name + '.csv', file) # Close FTP and File file.close() ftp.close() # Finsih Script print("Finished") sys.exit()