Reorganizando a estrutura de muitos arquivos txt e depois mesclando-os em um quadro de dados

Gostaria muito de receber sua ajuda com isso!

Eu tenho ~ 4.5k arquivos txt que se parecem com isso:

Simple statistics using MSPA parameters: 8_3_1_1 on input file: 20130815 104359  875  000000 0528 0548_result.tif

 MSPA-class [color]:  Foreground/data pixels [%]  Frequency
============================================================
    CORE(s) [green]:               --                   0
    CORE(m) [green]:      48.43/13.45                   1
    CORE(l) [green]:               --                   0
      ISLET [brown]:       3.70/ 1.03                  20
 PERFORATION [blue]:       0.00/ 0.00                   0
       EDGE [black]:      30.93/ 8.59                  11
      LOOP [yellow]:       9.66/ 2.68                   6
       BRIDGE [red]:       0.00/ 0.00                   0
    BRANCH [orange]:       7.28/ 2.02                  40
  Background [grey]:       --- /72.22                  11
    Missing [white]:            0.00                    0

Quero ler todos os arquivos txt de um diretório no R e, em seguida, executar uma tarefa de reorganização antes de mesclá-los.

Os valores nos arquivos txt podem mudar; portanto, em locais onde há um 0,00 agora, pode ser um número relevante em alguns arquivos (portanto, precisamos deles). Para os campos em que há - agora, seria bom se o script pudesse testar se há - ou um número. Se houver -, deve transformá-los em NAs. Por outro lado, valores reais de 0,00 são de valor e eu preciso deles. Há apenas um valor para a coluna branca Em falta (ou linha aqui), esse valor deve ser copiado nas duas colunas,% em primeiro plano e% em pixels de dados.

A reorganização geral que eu preciso é disponibilizar todos os dados como colunas com apenas 1 linha por arquivo txt. Para cada linha de dados no arquivo txt aqui, deve haver 3 colunas no arquivo de saída (% do primeiro plano,% do pixel de dados e frequência para cada cor). O nome da linha deve ser o nome da imagem mencionado no início do arquivo, aqui: 20130815 104359 875 000000 0528 0548

O restante pode ser omitido.

A saída deve ser algo como isto:

Estou trabalhando nisso simultaneamente, mas não tenho certeza de qual direção tomar. Portanto, qualquer ajuda é mais que bem-vinda!

Best, Moritz

questionAnswers(2)

yourAnswerToTheQuestion