O MATLAB tem várias funções para converter dados de um tipo para outro, como todas as linguagens de programação.
Em seguida, explicaremos tudo sobre essa função, sua sintaxe, modos de chamada, argumentos de entrada e saída e os tipos de dados aceitos. Também incluímos imagens e exemplos práticos neste artigo que mostram como usar esse recurso.
Sintaxe da função MATLAB STR2DOUBLE ()
d = str2double (str)
Descrição da função matlab str2double ()
A função str2double () faz parte de um conjunto de funções de conversão do tipo de dados no MATLAB. O str2double () retorna em "D" a representação numérica em dupla precisão da string enviada em "str". A conversão de precisão dupla do texto em numérico pode ser feita com esta função para valores reais e complexos. As cordas enviadas em "STR" podem ser a matriz de células do tipo de vetores de caracteres, vetores de caracteres ou uma variedade de cordas.
A função matlab str2Double () aceita um conjunto reduzido de caracteres que não sejam caracteres numéricos para representar sinais, números complexos, vírgulas, pontos decimais e assim por diante. Em seguida, vejamos uma lista desses caracteres especiais que essa função aceita em sua string de entrada.
Vírgula “,”: Este personagem pode ser usado como mil separadores. Por exemplo, nessa sequência representando o número "32.000", a vírgula foi usada para separar as dezenas e os dígitos dos milhares das centenas, dezenas e unidades. O uso desse personagem é opcional, pois seu uso ou não uso não altera o resultado da conversão.
Ponto “.”: Este personagem é usado em valores com lugares decimais para separar a parte inteira da parte decimal.
Adição e subtração “+” e “-“: Esses caracteres especiais são usados para definir o sinal dos valores exibidos na sequência de entrada de Str2Double.
"Eu" e "J": Esses caracteres adicionais representam quantidades reais e imaginárias em valores complexos.
"E": Este personagem na sequência de entrada de str2double () representa valores exponenciais antes do fator de potência.
Se um caractere inaceitado for enviado na sequência de entrada, um erro impede que o str2Double () execute a conversão. Nesses casos, esta função retorna um valor nan. Em seguida, veremos alguns exemplos práticos que mostram o uso dessa função no Matlab.
Como converter uma string em escalar duplo numérico com função matlab str2double
Neste exemplo, vemos como você pode converter uma string de um número inteiro positivo para sua representação numérica. O resultado é um escalar de dupla precisão que representa o valor enviado em "STR" no formato de string.
str = “12345”;
d = str2double (str)
d = classe (d)
d =
12345
Ans =
'dobro'
A ilustração a seguir mostra como a função str2Double () em "D" retorna um escalar inteiro de precisão dupla contendo o valor numérico contido na string "str" enviada como um argumento de entrada. A função Class () exibe o tipo de dados de "D".
Como converter uma string em um escalar duplo com um ponto decimal usando a função MATLAB STR2DOUBLE ()
A função matlab str2Double () aceita um número limitado de caracteres representando valores na sequência de entrada, um dos quais é o ponto decimal. Neste exemplo, veremos como você pode converter strings representando números com um ponto decimal para um escalar de precisão dupla.
str = “3.1415 ”;
d = str2double (str)
d = classe (d)
d =
3.1415
d =
'dobro'
A imagem a seguir mostra que o ponto na sequência de entrada também é convertido pela função str2double ():
Convertendo uma string com um valor de sinal negativo em um escalar duplo com a função MATLAB STR2DOUBLE
Como explicado anteriormente, essa função aceita um número limitado de caracteres representando valores na sequência de entrada. Outros caracteres não numéricos que a função MATLAB STR2DOUBLE () aceita são os sinais "+" e "-". Em seguida, vejamos um exemplo em que implementamos esses símbolos para representar valores positivos e negativos na string que serve como o argumento de entrada de str2double ().
str = "-54321";
d = str2double (str)
d =
'dobro'
-54321
Conforme mostrado na figura a seguir, os caracteres "+" e "-" na sequência de entrada determinam o sinal do resultado após a conversão:
Conversão de strings com números complexos em um escalar duplo com a função Matlab str2double
Este exemplo mostra como converter uma sequência de texto representando um número complexo em um complexo escalar de precisão dupla usando a função Matlab str2double. No texto da sequência de entrada, precisamos inserir o personagem "eu" para denotar as partes reais e imaginárias do número.
str = “24.2325-1.2748i ”;
d = str2double (str)
d =
'dobro'
24.2325 - 1.2748i
Como mostra a imagem a seguir no console de comando, o STR2DOUBLE realizou a conversão da sequência de entrada em um número complexo. Ao exibir esses valores, nenhum espaço deve ser inserido entre as partes reais e imaginárias do número complexo.
Convertendo uma variedade de vetores de caracteres em uma matriz numérica usando a função STR2DOUBLE no MATLAB
Este exemplo mostra como converter uma variedade de vetores de caracteres em uma matriz numérica usando a função MATLAB STR2DOUBLE. Para fazer isso, uma variedade de vetores de caracteres “A” com 2 × 2 elementos é criada e enviada como um argumento de entrada.
a = '1321', '7748';
'1364', '1414';
d = str2double (a)
d =
1321 7748
1364 1414
Conclusão
Neste artigo, explicamos como usar a função MATLAB STR2DOUBLE. Esta função é um conjunto de recursos que essa poderosa linguagem de programação científica fornece ao programador para converter de um tipo de dados para outro. A função STR2DOUBLE é benéfica para obter dados numéricos de arquivos de texto, bancos de dados ou outros dados de entrada em que as informações são formatadas como texto ou strings. Para sua melhor compreensão, adicionamos exemplos e imagens práticas a este artigo que explicam melhor como usar essa função com diferentes matrizes de entrada. Também incluímos neste artigo uma lista dos caracteres adicionais não numéricos aceitos por esta função. Esperamos que você tenha achado este artigo do Matlab. Veja outros artigos de dica do Linux para obter mais dicas e informações.