| Title: | Accounting Analysis |
|---|---|
| Description: | Provides methods for processing corporate balance sheets with a focus on the Brazilian reporting format. Includes data standardization, classification by accounting categories, and aggregation of values. Supports accounting and financial analyses of companies, improving efficiency and ensuring reproducibility of empirical studies. |
| Authors: | Lissandro Costa de Sousa [cre, aut], Francisco Gildemir Ferreira da Silva [ths, aut] |
| Maintainer: | Lissandro Costa de Sousa <[email protected]> |
| License: | MIT + file LICENSE |
| Version: | 1.1.8 |
| Built: | 2026-06-01 16:41:09 UTC |
| Source: | https://github.com/cranhaven/cranhaven.r-universe.dev |
Esta funcao realiza a Analise Vertical (AV) e Analise Horizontal (AH) com base em dados contabeis de empresas, podendo ser aplicada tanto a dados agregados quanto a dados detalhados (ex: Balanco Patrimonial individualizado). Alem disso, gera uma projecao para o ano seguinte, assumindo um crescimento de 5
calcular_AV_AH(df, tipo)calcular_AV_AH(df, tipo)
df |
Um data frame contendo os dados contabeis. Deve conter colunas com valores numericos para diferentes anos, alem de uma coluna identificadora da natureza das contas (por exemplo, |
tipo |
Um parametro do tipo |
A Analise Vertical (AV) expressa cada item patrimonial como uma proporcao do total do ativo ou passivo correspondente no mesmo ano.
A Analise Horizontal (AH) compara a evolucao dos valores ao longo dos anos, em relacao ao primeiro ano da base de dados (ano base).
A funcao ainda projeta valores para o ano seguinte com base em um crescimento linear de 5
Uma lista com dois data frames:
AV_AHData frame contendo os valores originais, os resultados da Analise Vertical (com sufixo _AV) e da Analise Horizontal (com sufixo _AH).
ProjecaoData frame contendo a projecao de valores para o ano seguinte, com base em um crescimento de 5%.
df <- data.frame( Conta = c( "Caixa e equivalentes de caixa", "Clientes", "Estoques", "Fornecedores", "Emprestimos e financiamentos" ), X2022 = c(1000, 2500, 1800, 2100, 1500), X2023 = c(1200, 2600, 1700, 2300, 1600) ) resultado <- padronizar_balanco(df) av_ah <- calcular_AV_AH(resultado$agregado, tipo = "agregado")df <- data.frame( Conta = c( "Caixa e equivalentes de caixa", "Clientes", "Estoques", "Fornecedores", "Emprestimos e financiamentos" ), X2022 = c(1000, 2500, 1800, 2100, 1500), X2023 = c(1200, 2600, 1700, 2300, 1600) ) resultado <- padronizar_balanco(df) av_ah <- calcular_AV_AH(resultado$agregado, tipo = "agregado")
Esta funcao recebe dois data frames padronizados: um representando o Balanco Patrimonial (bp) e outro representando a Demonstracao do Resultado (dre). A partir deles, calcula indicadores classicos de liquidez, estrutura de capital, margens operacionais, eficiencia e rentabilidade.
indicadores(bp = NULL, dre = NULL)indicadores(bp = NULL, dre = NULL)
bp |
Um data.frame contendo o Balanco Patrimonial, com uma coluna Categoria e colunas adicionais representando anos. As categorias devem seguir o padrao: - ACO: Ativo Circulante Operacional - ACF: Ativo Circulante Financeiro - PCO: Passivo Circulante Operacional - PCF: Passivo Circulante Financeiro - ANC: Ativo Nao Circulante - PNC: Passivo Nao Circulante - PL: Patrimonio Liquido |
dre |
Um data.frame contendo a Demonstracao do Resultado, tambem com coluna Categoria e colunas representando anos. As principais categorias esperadas incluem: - RECEITA_LIQUIDA - CUSTO_BENS_SERVICOS - DESPESAS_OPERACIONAIS - RESULTADO_FINANCEIRO - RESULTADO_LIQUIDO |
Caso a DRE contenha as categorias LUCRO_BRUTO, DESPESAS_OPERACIONAIS e RESULTADO_FINANCEIRO, a funcao calcula automaticamente o EBIT, utilizado nos indicadores de margem operacional e na razao EBIT/Ativo.
Indicadores calculados:
Balanco Patrimonial: - Liquidez Corrente = (ACO + ACF) / (PCO + PCF) - Liquidez Seca = ACO / (PCO + PCF) - Liquidez Imediata = ACF / (PCO + PCF) - Endividamento Geral = (PCO + PCF + PNC) / (ACO + ACF + ANC) - Composicao do Endividamento = (PCO + PCF) / (PCO + PCF + PNC) - Imobilizacao do PL = ANC / PL
Demonstracao do Resultado: - Margem Bruta = (RECEITA_LIQUIDA - CUSTO_BENS_SERVICOS) / RECEITA_LIQUIDA - Margem Operacional = EBIT / RECEITA_LIQUIDA - Margem Liquida = RESULTADO_LIQUIDO / RECEITA_LIQUIDA
Indicadores Integrados (DuPont e rentabilidade): - ROA = RESULTADO_LIQUIDO / Ativo Total - ROE = RESULTADO_LIQUIDO / PL - Giro do Ativo = RECEITA_LIQUIDA / Ativo Total - Alavancagem Financeira = Ativo Total / PL - EBIT/Ativo = EBIT / Ativo Total
Uma lista contendo tres data.frames: - indicadores_bp: Liquidez e estrutura de capital - indicadores_dre: Margens operacionais - indicadores_conjuntos: Indicadores integrados (inclui DuPont)
# Exemplo de dados padronizados para o Balanço Patrimonial bp <- data.frame( Categoria = c("ACO", "ACF", "PCO", "PCF", "ANC", "PNC", "PL"), `2023` = c(50000, 20000, 30000, 10000, 80000, 40000, 90000), `2024` = c(54000, 22000, 32000, 12000, 82000, 45000, 92000), check.names = FALSE ) # Exemplo de dados padronizados para a Demonstração do Resultado dre <- data.frame( Categoria = c( "RECEITA_LIQUIDA", "CUSTO_BENS_SERVICOS", "DESPESAS_OPERACIONAIS", "RESULTADO_FINANCEIRO", "RESULTADO_LIQUIDO" ), `2023` = c(150000, 90000, 20000, -5000, 25000), `2024` = c(160000, 95000, 21000, -6000, 27000), check.names = FALSE ) # Cálculo dos indicadores resultado <- indicadores(bp, dre) # Visualizando cada conjunto de resultados resultado$indicadores_bp # Liquidez, estrutura de capital resultado$indicadores_dre # Margens operacionais e líquidas resultado$indicadores_conjuntos # ROA, ROE, DuPont etc.# Exemplo de dados padronizados para o Balanço Patrimonial bp <- data.frame( Categoria = c("ACO", "ACF", "PCO", "PCF", "ANC", "PNC", "PL"), `2023` = c(50000, 20000, 30000, 10000, 80000, 40000, 90000), `2024` = c(54000, 22000, 32000, 12000, 82000, 45000, 92000), check.names = FALSE ) # Exemplo de dados padronizados para a Demonstração do Resultado dre <- data.frame( Categoria = c( "RECEITA_LIQUIDA", "CUSTO_BENS_SERVICOS", "DESPESAS_OPERACIONAIS", "RESULTADO_FINANCEIRO", "RESULTADO_LIQUIDO" ), `2023` = c(150000, 90000, 20000, -5000, 25000), `2024` = c(160000, 95000, 21000, -6000, 27000), check.names = FALSE ) # Cálculo dos indicadores resultado <- indicadores(bp, dre) # Visualizando cada conjunto de resultados resultado$indicadores_bp # Liquidez, estrutura de capital resultado$indicadores_dre # Margens operacionais e líquidas resultado$indicadores_conjuntos # ROA, ROE, DuPont etc.
Esta funcao realiza o pre-processamento de um data frame contendo contas do balanco patrimonial, convertendo os valores numericos no formato brasileiro para formato numerico padrao do R, classificando as contas em categorias contabeis predefinidas e agregando os valores por categoria.
padronizar_balanco(df)padronizar_balanco(df)
df |
Um |
A primeira coluna do data frame deve conter os nomes das contas, enquanto as demais colunas devem conter os valores financeiros em formato textual brasileiro (com ponto como separador de milhar e virgula decimal).
Uma lista com dois objetos:
agregadoUm data.frame com os valores agregados por categoria contabil.
originalO data.frame original com os valores convertidos e a nova coluna categorias_bp.
df <- data.frame( Conta = c("Caixa e equivalentes de caixa", "Fornecedores"), X2022 = c("1.000,00", "(500,00)"), X2023 = c("1.200,00", "(600,00)") ) # Padronizando o balanço resultado <- padronizar_balanco(df) resultado$agregadodf <- data.frame( Conta = c("Caixa e equivalentes de caixa", "Fornecedores"), X2022 = c("1.000,00", "(500,00)"), X2023 = c("1.200,00", "(600,00)") ) # Padronizando o balanço resultado <- padronizar_balanco(df) resultado$agregado
Esta funcao realiza o pre-processamento de um data.frame contendo contas da Demonstracao
do Resultado do Exercicio (DRE). O procedimento envolve a normalizacao dos nomes das contas,
a conversao dos valores financeiros expressos no formato brasileiro para valores numericos
padrao e a classificacao das contas nas categorias contabeis predefinidas em categorias_dre.
padronizar_dre(df)padronizar_dre(df)
df |
Um |
Apos a categorizacao, os valores sao agregados por categoria, permitindo a analise consolidada da estrutura de resultados da empresa. O objetivo e padronizar demonstracoes provenientes de diferentes fontes, facilitando comparacoes, calculos de indicadores e analises financeiras.
A primeira coluna do data.frame deve conter os nomes das contas, enquanto as demais
colunas devem conter valores financeiros representados como texto no formato contabil brasileiro
(uso de ponto como separador de milhar e virgula como separador decimal, com parenteses
indicando valores negativos).
Uma lista contendo dois objetos:
agregadoUm data.frame com os valores financeiros agregados por categoria da DRE.
originalO data.frame original, com os valores convertidos e a coluna Categoria adicionada.
df <- data.frame( Conta = c("Receita Bruta de Vendas", "ICMS", "Custo das Mercadorias Vendidas"), X2023 = c("100.000,00", "(15.000,00)", "(40.000,00)") ) resultado <- padronizar_dre(df) resultado$agregadodf <- data.frame( Conta = c("Receita Bruta de Vendas", "ICMS", "Custo das Mercadorias Vendidas"), X2023 = c("100.000,00", "(15.000,00)", "(40.000,00)") ) resultado <- padronizar_dre(df) resultado$agregado