コード例 #1
0
ファイル: testsender.py プロジェクト: radoraykov/datavivaetl
def main(run):
    
    
    start=time.time()
    
    
    #Prepare
    bl=openBL()
    start=printTime("openBL",start)
    
    if run=='test':
        #Test Data
        entrada="dados/nfe/testegrande.csv"
        delimiter=','
    else:
    #Full Data
        entrada="dados/nfe/2013_01.csv"
        delimiter=';'
    
    dados=openNFe(entrada,delimiter)   
    start=printTime("openNFe",start) 
    
    dados=mergeNfeBL(dados,bl)
    start=printTime("mergeNfeBL",start)
    

    
    dados=groupBYMunCNAE(dados) 
    start=printTime("groupBYMunCNAE",start)
    
    dadosSave=dados.drop(['corte','empresas'],1)
    df_to_csv(dadosSave , "dados/nfe/finalgroup.csv")
    #dadosSave.to_json("dados/nfe/finalgroup.json")
    
    dadosNovoBL=novoCorte(dados)
    start=printTime("novoCorte",start)
    df_to_csv(dadosNovoBL , "dados/nfe/finalInitBL.csv")
    
    dadosNovoBL = marcarCorteMenorFaturamento(dadosNovoBL)
    start=printTime("marcarCorteMenorFaturamento",start)
    
    df_to_csv(dadosNovoBL , "dados/nfe/finalNovoBL.csv")
    
        
    dadosFinal = corteFinal(dados,dadosNovoBL)
    start=printTime("corteFinal",start)
    
    dadosFinal['EconomicAtivity_ID_CNAE_Sender'][ dadosFinal.cortar==1] = 0
    df_to_csv(dadosFinal , "dados/nfe/finalAntesDrop.csv")
    dadosFinal=dadosFinal.drop(['corte','empresas','cortar','cortefinal'],1)
    dadosFinal=dadosFinal.set_index('Municipality_ID_Sender')
    df_to_csv(dadosFinal , "dados/nfe/final.csv")
コード例 #2
0
ファイル: test.py プロジェクト: radoraykov/datavivaetl
def main():
    dirFile =  'teste.txt'
    dirCSV =  'teste.txt.csv'
    

    headers = ('ANO_CENSO','PK_COD_MATRICULA','FK_COD_ALUNO','NUM_IDADE', 'TP_SEXO', \
               'TP_COR_RACA', 'FK_COD_ESTADO_END', 'SIGLA_END', 'FK_COD_MUNICIPIO_END', 'ID_ZONA_RESIDENCIAL', \
               'FK_COD_MOD_ENSINO', 'FK_COD_ETAPA_ENSINO', 'PK_COD_TURMA', 'FK_COD_CURSO_PROF', 'PK_COD_ENTIDADE', \
               'FK_COD_ESTADO_ESCOLA', 'SIGLA_ESCOLA', 'COD_MUNICIPIO_ESCOLA', 'ID_LOCALIZACAO_ESC', 'ID_DEPENDENCIA_ADM_ESC')
                  
    #Coluna começa com 0
    columns = ((0,5),(5,18),(18,32),(43,47),(65,66), \
               (66,67),(86,89),(89,91),(91,100),(100,101), \
               (129,132),(132,136),(136,147),(147,156),(161,170), \
                   (170,173),(173,175),(175,184),(184,193),(193,194))
    
    
    fixed_to_csv(dirFile,columns,dirCSV,headers)
    
    df = read_from_csv(dirCSV)
    
    
    
    #SIMPLE COMPUTED COLUMNS
    df["SIMPLE_COMPUTED_COLUMNS"]=df["ANO_CENSO"] + df["NUM_IDADE"]
    
    #COMPLEX COMPUTED COLUMNS
    df["COMPLEX_COMPUTED_COLUMNS"] = df.apply(sexo_to_number,axis=1)
    
    #REPLACE PART COLUMN
    df['REPLACE_PART_COLUMN'] = df['SIMPLE_COMPUTED_COLUMNS'].str.replace('20', 'XX')
    
    
    df2 = read_from_csv(dirCSV)
 
    #MAP COMPUTED COLUMNS
    df2 = read_from_csv(dirCSV)
    
    print df
    print df2
    #MERGE
    df3 = df.merge(df2)
    print df3
    
    df_to_csv(df3 , dirCSV)
コード例 #3
0
ファイル: step_4_sent.py プロジェクト: radoraykov/datavivaetl
def run_check(dfDV,dfSent,groupId,year):

    if dfSent is not None:
        dfSent=clean_df_sent(dfSent)    
    if dfDV is not None:
        dfDV=clean_df_dv(dfDV)
        
    
    dfGroup = dfSent.groupby([groupId]) 
    df_to_csv(dfGroup.sum(),"dados\emprego\sent\RaisGroup"+str(year)+".csv")
    
    total=0
    print "Enterin in for "+groupId
    for id in dfDV['id']:  
        idint =to_int(id)
        if not id:
            continue
        
        valDV = dfDV[(dfDV['id']==id)]['val'].values[0]

        valCSV=get_valueGroup(dfGroup,id,'wage')
        if valCSV==False:
            valCSV=get_valueGroup(dfGroup,idint,'wage')
        
        if valCSV==False:
            total=total+1
            print "Not found in CSV a value for "+str(id)+" - "+str(idint)+"  : Exports of value  "+ str(valDV)+ " in the year "+str(year)
            continue 

         
        valCSV=to_int(valCSV)        
        valDV=to_int(valDV)
        if valDV!=valCSV:
            txt= "ERROR in groupId ("+str(year)+"): "+str(id)+" / "+str(idint)+" - Value in CSV "+ str(valCSV)+ " <> Value in DV "+str(valDV) + " - Difference: "+str(valCSV - valDV)
            print txt
            total=total+1
        else:
            txt="OK "+str(id)
            #print txt
    return total
コード例 #4
0
def main(run):
    
    
    start=time.time()
    
    
    #Prepare
    bl=openBL()
    start=printTime("openBL",start)
    
    if run=='test':
        #Test Data
        entrada="dados/nfe/testegrande.csv"
        delimiter=','
    else:
    #Full Data
        entrada="dados/nfe/2013_01.csv"
        delimiter=';'
    
    dados=openNFe(entrada,delimiter)   
    start=printTime("openNFe",start) 
    
    dados=mergeNfeBL(dados,bl)
    start=printTime("mergeNfeBL",start)
    

    
    dados=groupBYMunHS(dados) 
    start=printTime("groupBYMunHS",start)    
    
    df_to_csv(dados , "dados/nfe/finalLocalCNAExHSgroup.csv")

    dados=dados.reset_index()
    dados['TransactedProduct_ID_HS'][ dados.corte==1] = 0
    df_to_csv(dados , "dados/nfe/finalLocalCNAExHSAntesDrop.csv")
    dados=dados.drop(['corte','empresas','corte'],1)
    dados=dados.set_index('Municipality_ID_Sender')
    df_to_csv(dados , "dados/nfe/finalLocalCNAExHS.csv")