Version: 1.1.0
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.
License: MIT + file LICENSE
URL: https://github.com/LissandroSousa/adcontabil.R
BugReports: https://github.com/LissandroSousa/adcontabil.R/issues
Imports: dplyr, magrittr, stringi, data.table
Encoding: UTF-8
RoxygenNote: 7.3.3
NeedsCompilation: no
Depends: R (≥ 4.1.0)
Packaged: 2025-11-08 16:30:39 UTC; USER
Author: Lissandro Costa de Sousa [cre, aut], Francisco Gildemir Ferreira da Silva [ths, aut]
Maintainer: Lissandro Costa de Sousa <lisandrosousa54@gmail.com>
Repository: CRAN
Date/Publication: 2025-11-08 16:40:02 UTC

Calcular Análise Vertical e Horizontal com projeção

Description

Esta função realiza a Análise Vertical (AV) e Análise Horizontal (AH) com base em dados contábeis de empresas, podendo ser aplicada tanto a dados agregados quanto a dados detalhados (ex: Balanço Patrimonial individualizado). Além disso, gera uma projeção para o ano seguinte, assumindo um crescimento de 5

Usage

calcular_AV_AH(df, tipo)

Arguments

df

Um data frame contendo os dados contábeis. Deve conter colunas com valores numéricos para diferentes anos, além de uma coluna identificadora da natureza das contas (por exemplo, "Categoria" ou "Conta").

tipo

Um parâmetro do tipo character que indica a estrutura do data frame. Deve ser "agregado" quando os dados estão organizados por categorias (ex: ACO, ANC, PL etc.), ou outro valor (ex: "detalhado") quando as contas individuais estão identificadas por uma coluna chamada "Conta".

Details

A Análise Vertical (AV) expressa cada item patrimonial como uma proporção do total do ativo ou passivo correspondente no mesmo ano.

A Análise Horizontal (AH) compara a evolução dos valores ao longo dos anos, em relação ao primeiro ano da base de dados (ano base).

A função ainda projeta valores para o ano seguinte com base em um crescimento linear de 5

Value

Uma lista com dois data frames:

AV_AH

Data frame contendo os valores originais, os resultados da Análise Vertical (com sufixo _AV) e da Análise Horizontal (com sufixo _AH).

Projecao

Data frame contendo a projeção de valores para o ano seguinte, com base em um crescimento de 5%.

Examples

# Criando dados agregados de exemplo
df <- data.frame(
  Conta = c("Ativo Circulante", "Passivo Circulante"),
  X2022 = c(1000, 800),
  X2023 = c(1200, 900)
)

# Padronizando o balanço
resultado <- padronizar_balanco(df)

# Calculando análise vertical e horizontal para dados agregados
av_ah <- calcular_AV_AH(resultado$agregado, tipo = "agregado")

# Visualizando partes do resultado
head(av_ah$AV_AH)
head(av_ah$Projecao)

Lista de categorias contabeis utilizadas internamente

Description

Este objeto lista, em formato de 'list', as categorias contabeis utilizadas para classificacao de contas em funcoes internas do pacote.

Usage

categorias_bp

Format

Uma lista nomeada com vetores de caracteres.

Details

As chaves representam os grupos (por exemplo, ACF = Ativo Circulante Financeiro), e os vetores associados contem os nomes das contas que pertencem a cada grupo.


Lista de categorias de contas utilizadas na Demonstração do Resultado do Exercício (DRE)

Description

Este objeto contém a estrutura de categorias aplicada para classificação de contas referentes à Demonstração do Resultado do Exercício. Cada elemento da lista representa uma categoria da DRE e contém um vetor de caracteres com os nomes das contas que pertencem a essa classificação.

Usage

categorias_dre

Format

Uma lista nomeada, onde cada elemento é um vetor de caracteres contendo os nomes das contas associadas à respectiva categoria.

Details

As denominações refletem os grupos contábeis usuais, tais como: * Receita Bruta * Deduções e Impostos sobre Vendas * Receita Líquida * Custo das Vendas * Lucro Bruto * Despesas Operacionais * Resultado Financeiro * Resultado Antes do Imposto de Renda * Resultado Líquido do Exercício

Esta lista é utilizada internamente por funções de classificação automatizada, servindo como referência padronizada para identificação dos agrupamentos de contas. A precisão da classificação depende diretamente da aderência dos nomes das contas aos termos definidos neste objeto.


Classifica contas contabeis de acordo com categorias predefinidas

Description

A funcao recebe o nome de uma conta e retorna sua categoria contabil conforme a lista 'categorias'.

Usage

classificar_conta_bp(conta)

Arguments

conta

Um vetor de caracteres com o(s) nome(s) da(s) conta(s) a classificar.

Value

Um vetor de caracteres com a categoria correspondente ou NA se nao classificada.


Classifica contas específicas da Demonstração do Resultado do Exercício (DRE)

Description

Esta função recebe o nome de uma conta e identifica sua categoria dentro das classes previstas para a Demonstração do Resultado do Exercício. A classificação é realizada com base na lista interna 'categorias_dre', que associa cada categoria aos respectivos nomes de contas normalmente encontrados em demonstrações contábeis.

Usage

classificar_conta_dre(conta)

Arguments

conta

Um vetor de caracteres contendo o nome da conta a ser classificada.

Details

O objetivo principal é padronizar a identificação das contas, facilitando etapas subsequentes de análise, agrupamento, sumarização e composição de indicadores.

A função realiza uma busca direta por correspondência exata entre o valor de conta e os elementos registrados na lista 'categorias_dre'. Assim, recomenda-se que os nomes das contas sejam previamente normalizados, removendo acentos, padronizando letras minúsculas e eliminando variações ortográficas, a fim de maximizar a precisão da classificação.

Value

Um vetor de caracteres indicando a categoria da DRE correspondente ao valor informado. Caso o nome não seja reconhecido entre as categorias mapeadas, retorna NA.


Converte texto contabil brasileiro para numero negativo quando necessario

Description

Esta funcao transforma strings representando valores contabeis no formato brasileiro (com virgula decimal, ponto como separador de milhar e uso de parenteses para indicar valor negativo) em valores numericos padrao do R.

Usage

conv_br_numeric(vetor)

Arguments

vetor

Vetor de caracteres contendo os valores a serem convertidos.

Value

Vetor numerico com os valores convertidos.


Calcula indicadores financeiros a partir do Balanco Patrimonial e da Demonstracao do Resultado

Description

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.

Usage

indicadores(bp = NULL, dre = NULL)

Arguments

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

Details

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

Value

Uma lista contendo tres data.frames: - indicadores_bp: Liquidez e estrutura de capital - indicadores_dre: Margens operacionais - indicadores_conjuntos: Indicadores integrados (inclui DuPont)


Normaliza texto removendo acentos e cedilha

Description

Função interna utilizada nos processos de padronização textual. Não deve ser chamada diretamente pelo usuário final.

Usage

normalizar_texto(x)

Arguments

x

Vetor de caracteres a ser normalizado.

Value

Vetor de caracteres normalizado.


Processa e agrega um balanco patrimonial em categorias contabeis

Description

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.

Usage

padronizar_balanco(df)

Arguments

df

Um data.frame contendo o balanco patrimonial. A primeira coluna deve conter os nomes das contas, e as colunas seguintes devem conter valores financeiros em formato de texto (ex: "(1.234,56)").

Details

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).

Value

Uma lista com dois objetos:

agregado

Um data.frame com os valores agregados por categoria contabil.

original

O data.frame original com os valores convertidos e a nova coluna categorias_bp.

Examples

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$agregado


Processa e agrega uma Demonstracao do Resultado do Exercicio (DRE) em categorias contabeis

Description

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.

Usage

padronizar_dre(df)

Arguments

df

Um data.frame contendo a DRE. A primeira coluna deve corresponder aos nomes das contas, e as colunas seguintes devem conter valores financeiros em formato de texto (por exemplo, "(45.300,50)").

Details

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).

Value

Uma lista contendo dois objetos:

agregado

Um data.frame com os valores financeiros agregados por categoria da DRE.

original

O data.frame original, com os valores convertidos e a coluna Categoria adicionada.

Examples

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$agregado