A importação da representação numérica csv scientif não permite nenhum valor matemático usando o Libre Office Calc

1

Eu tenho um arquivo csv com alguns números pequenos. Quando eu importo com o Libre Office Calc, os números são representados usando a notação científica.

Então, quando tento fazer qualquer operação matemática usando esses números, eu sempre obtenho #VALUE!

Por que?

Em vez disso, no mesmo csv, também tenho, por exemplo, 0 dentro da célula I1 , se eu =I1+1 , os resultados são 1 .

Então, quais são os problemas com outros números?

Aqui um exemplo do arquivo:

    
por Teo 06.11.2017 / 19:01

1 resposta

2

Explicação

Por favor, observe que o número na coluna D na tela da sua pergunta está ajustado corretamente como um número, enquanto os outros números com um ponto são ajustados como texto.

Acho que você tem uma localidade que usa a vírgula , em vez do ponto . para separar as decimais.

Portanto, se você converter o arquivo csv (substitua os pontos por vírgulas) antes de importar os dados, ele deverá funcionar.

Conversão com tr

Você pode usar tr para substituir os pontos decimais por vírgulas. É uma boa ideia verificar primeiro (em um editor) que não há 'outros pontos' que você deseja preservar. Por exemplo, provavelmente há vírgulas que separam as colunas e você deve convertê-las em guias antes de substituir os pontos decimais.

Então, por exemplo (use seus próprios nomes de arquivo)

< csv-dot.txt tr ',' '\t' | tr '\.' ',' > csv-comma.txt

Exemplo

$ echo 5.4e-07,4.00e-07>csv-dot.txt
$ < csv-dot.txt tr ',' '\t' | tr '\.' ',' > csv-comma.txt
$ for i in csv-*;do echo -n "$i: ";cat "$i"; done
csv-comma.txt: 5,4e-07  4,00e-07
csv-dot.txt: 5.4e-07, 4.00e-07
    
por sudodus 06.11.2017 / 19:10