Extrair e empilhar tabela de arquivos pdfs

Boa tarde pessoal.

Estou tentando ler várias tabelas (imagem abaixo) de arquivos pdfs com a função extract_tables. Conforme imagem, as variáveis “Date”, “Time” e “ºC” se repetem em outras colunas, então empilhei na sequência cronológica (de “Date”, “Time”). Criei uma estrutura de repetição para extrair dos nomes dos arquivos pdfs (exe.: Jul-2020_AMAZONAS_Volume 12_Inferior) as respectivas informações: Mês, Estado, Volume e Posição e a criar um arquivos .xlsx conforme estrutura a baixo. O código rodou bem até encontra um arquivo pdf com duas páginas, apresentando o seguinte erro:
Error in (function (…, row.names = NULL, check.rows = FALSE, check.names = TRUE, : **
** arguments imply differing number of rows: 120, 16

Sei que é um problema simples, mas não estou conseguindo resolvê-lo. Alguém de fórum poderia ajuda neste código :

pdfs<-‘C:/Users/Agosto_2020’
lista<-list.files(pdfs)
temp.lista = list()

for (i in 1:length(lista)) {
nome<-str_split(lista[i], ‘_’,simplify = TRUE)
mes<-nome[1]
estado<-nome[2]
volume<-nome[3]
posicao<-str_sub(nome[4], end=-5)
pdf<-file.path(pdfs,lista[i])

t<-as.data.frame(extract_tables(pdf, output = ‘data.frame’)) %>%
select_if(~ !all(is.na(.))) %>%
data.table() %>%
melt(measure.vars = patterns(’^Date’,’^Time’,’^o’),
value.name = c(‘Data’,‘Hora’,‘Temperatura’)) %>%
select(-variable) %>%
na.exclude() %>%
mutate(Estado = rep(estado, nrow(.)),
Volume = rep(volume, nrow(.)),
Mes = rep(mes,nrow(.)),
Posicao = rep(posicao,nrow(.)),
Tempo = lubridate::as_datetime(paste(Data, Hora),format ="%d/%m/%y %H:%M:%S")) %>%
select(Mes,Estado,Volume,Posicao,Temperatura,Tempo)
temp.lista[[i]] <- t
}
temp.dados = do.call(bind_rows, temp.lista)

openxlsx::write.xlsx(temp.dados,‘temperatura.xlsx’)

Estrutura do arquivo .xlsx:

Mes Estado Volume Posicao Temperatura Tempo
Jan-20 AMAZONAS Volume 01 Inferior 6.5 2020/01/20 13:53:18
Jan-20 AMAZONAS Volume 01 Inferior 5.9 2020/01/20 13:58:18
Jan-20 AMAZONAS Volume 01 Meio 5.7 2020/01/20 14:03:18
Jan-20 AMAZONAS Volume 01 Meio 5.6 2020/01/20 14:08:18
Jan-20 AMAZONAS Volume 01 Superior 5.7 2020/01/20 14:13:18
Jan-20 AMAZONAS Volume 01 Superior 5.7 2020/01/20 14:18:18
Jan-20 ACRE Volume 01 Inferior 5.7 2020/01/20 14:23:18
Jan-20 ACRE Volume 01 Inferior 5.8 2020/01/20 14:28:18
Jan-20 ACRE Volume 01 Meio 5.8 2020/01/20 14:33:18
Jan-20 ACRE Volume 01 Meio 5.9 2020/01/20 14:38:18
Jan-20 ACRE Volume 01 Superior 5.9 2020/01/20 14:43:18
Jan-20 ACRE Volume 01 Superior 6 2020/01/20 14:48:18

image

Difícil debugar sem os arquivos… Eu tentaria ver o que a função extract_tables retorna para esse PDF específico que está dando problemas. Esse erro está aparentemente dentro daquele as.data.frame.

Olá Daniel, boa noite.

segue o link com dois arquivos para debugar, um com uma página e o outro com duas páginas. Obrigado pelo retorno.