Noções básicas de importação matlab

A importação básica usa todas as configurações padrão, que funciona bem para muitos tipos de dados. MATLAB pode determinar o formato correto de dados com relativa frequência. Uma parte essencial de importação de dados é usar a função de importação correto. Cada função de importação tem características que o tornam mais adequado para um determinado tipo de dados. Aqui estão algumas das funções de importação específico de texto e como eles diferem:

Video: Noções Básicas da Importação de Suplementos

  • csvread (): Funciona com apenas os números e os números devem ser separados por vírgulas (valores separados daí o nome vírgula ou CSV).

  • dlmread (): Funciona apenas com números, mas os números são normalmente separados por algo diferente de vírgulas.

  • textscan (): É possível importar números e strings. Você deve fornecer uma especificação de formato para ler os dados corretamente.

  • readtable (): É possível importar números e strings. A saída desta função é sempre uma mesa, mesmo quando a fonte não contém dados tabulares.

A saída recebe depende da função que você usa. Estes exemplos cada usar um método diferente de ler os dados a partir do disco. No entanto, todos eles usam os mesmos dados para que você possa comparar os resultados.

15,25,3018,29,3321,35,41

Usando csvread ()

utilização csvread () é a opção mais simples quando se trabalha com dados desse tipo. Tudo que você faz é tipo CSVOutput = csvread ( ‘NumericData.csv’) e pressione Enter. A saída é uma matriz que contém os seguintes resultados:

Video: #01 Aprendiz de Importador - Noções Básicas Para Importar Suplemento

CSVOutput = 15 25 3018 29 3321 35 41

Usando dlmread ()

o dlmread () função é um pouco mais flexível do que csvread () porque você pode fornecer uma delimitador - um personagem usado para separar valores - como entrada. Cada coluna é separado do outro por uma vírgula. As linhas são separadas por um caractere de nova linha. Então, tudo que você precisa digitar neste caso é DLMOutput = dlmread ( ‘NumericData.csv’)- em seguida, pressione Enter. A saída é uma matriz que contém os seguintes resultados:

DLMOutput = 15 25 3018 29 3321 35 41

Usando textscan ()

o textscan () função pode ler ambas as cadeias de caracteres e números no mesmo conjunto de dados. No entanto, você deve definir uma especificação de formato para usar esta função. Além disso, você não pode simplesmente abrir o arquivo e trabalhar com ele. Com estes requisitos em mente, você pode utilizar os seguintes passos para ajudar você a usar o textscan () função.

  1. Digite FileID = fopen ( ‘NumericData.csv’) e pressione Enter.

    o textscan () função não pode abrir o arquivo para você. No entanto, ele não aceita o identificador que é retornado pela fopen () função. A variável, FileID, contém o identificador usado para acessar o arquivo.

  2. Tipo TSOutput = textscan (FileID, ‘% d,% d,% d / n’) e pressione a tecla Enter.

    Você começa uma única linha de dados como saída - nem todas as três linhas. Neste caso, os dados são lidos para uma matriz de células, e não uma matriz.

  3. Digite feof (FileID) e pressione Enter.

    Video: Como importar da china - Aprenda a importar produtos da china

    A função gera um 0, o que significa que você não está no final do arquivo ainda. Um teste simples usando o feof () função diz o loop para parar de ler o arquivo.

  4. Tipo TSOutput = [TSOutput- textscan (FileID, ‘% F,% F,% f / n’)] e pressione a tecla Enter.

    agora você vê a segunda fila de dados lidos. Estes números são lidos como valores de ponto flutuante em vez de números inteiros. utilização textscan () lhe dá o controle quase absoluto sobre a aparência dos dados na sua aplicação.



  5. Digite isinteger (TSOutput {1,1}) e pressione Enter.

    O valor de 1 saída informa que o elemento na linha 1, coluna 1 é de fato um inteiro.

  6. Digite isinteger (TSOutput {2,1}) e pressione Enter.

    Este passo verifica se o elemento em fileira 2, coluna 1 não é um número inteiro, porque o valor de saída é 0.

  7. Tipo TSOutput = [TSOutput- textscan (FileID, ‘% 2s,% 2s, 2s% / N’)] e pressione a tecla Enter.

  8. Tipo textscan (FileID, ‘% d,% d,% d / n’) e pressione a tecla Enter.

    Esta leitura deve levá-lo além do fim do arquivo. A saída vai conter células em branco porque nada é deixado de ler.

  9. Digite feof (FileID) e pressione Enter.

    Desta vez, o valor de saída é 1, o que significa que você está realmente no final do arquivo.

  10. Digite fclose (FileID) e pressione Enter.

    MATLAB fecha o arquivo.

    A falta de fechar um arquivo podem causar vazamentos de memória e todos os tipos de outros problemas.

Agora que você tem uma idéia melhor de como um textscan () deve funcionar, é hora de ver um aplicativo que usa-lo.

função [] = UseTextscan ()% UseTextscan: Uma demonstração da textscan ()% função Este exemplo mostra como usar textscan () para digitalizar os NumericData.csv% file.FileID = fopen ( `NumericData.csv`) - = TSOutput textscan (FileID, `% d,% d,% d / n`) - embora não (feof (FileID)) TempData = textscan (FileID, `% d,% d,% d / n`) - se feof (FileID ) quebrar-endTSOutput = [TSOutput- TempData] -enddisp (TSOutput) -fclose (FileID) -final

Observe que você deve verificar que você não tenha realmente chegado ao fim do arquivo antes de adicionar os dados em TempData para TSOutput. Caso contrário, você acaba com a linha em branco que textscan () obtém durante a última leitura do arquivo.

Usando readtable ()

o readtable () função funciona com as duas cordas e números. É muito mais fácil de usar do que textscan (), mas também tem algumas peculiaridades, como assumindo que a primeira linha de dados é, na verdade, nomes de coluna. Usar readtable () com o NumericData.csv tipo de arquivo RTOutput = readtable ( ‘NumericData.csv’, ‘ReadVariableNames’, falsos) e pressione Enter. Você vê o seguinte resultado:

RTOutput = Var1 Var2 Var3____ ____ ____15 25 3018 29 3321 35 41

A saída, na verdade, é uma tabela em vez de uma matriz ou uma matriz celular. As colunas têm nomes que lhes são inerentes. Como conseqüência, você pode acessar os membros individuais usando o nome da variável, como RTOutput {1 ‘Var1’}, que gera um valor de 15 neste caso.

Notar que readtable () aceita nome de propriedade e valor pares como entrada. Nesse caso, ‘ReadVariableNames’ é uma propriedade. A definição dessa propriedade para falso significa que readtable () não vai ler a primeira linha como um título de nomes de variáveis. Você usa readtable () onde o arquivo de saída contém nomes de variáveis, porque tê-los faz com que o acesso aos dados mais fáceis em muitas situações.


Publicações relacionadas