1
resposta

Dúvida Código

Não consegui entender muito bem o que foi feito aqui.

norma2 = np.array([])
for i in range(100):
norma2 = np.append(norma2, np.linalg.norm(Moscow-(coef_angulares[i]*X+b)))

1 resposta

Oi, Ana! Como vai?

Esse código serve para calcular e armazenar as normas (distâncias) entre um conjunto de dados real (Moscow) e um conjunto de dados estimado, usando diferentes coeficientes angulares.

Observe:


import numpy as np

# Dados de exemplo (substitua pelos seus dados reais)
Moscow = np.array([10, 20, 30, 40, 50])
X = np.array([1, 2, 3, 4, 5])
b = 5

# Gerar 100 coeficientes angulares aleatórios entre 0.1 e 0.9
coef_angulares = np.random.uniform(low=0.10, high=0.90, size=100)

# Inicializar um array vazio para armazenar as normas
norma2 = np.array([])

# Loop para calcular a norma para cada coeficiente angular
for i in range(100):
    # Calcular os valores estimados usando o coeficiente angular atual
    valores_estimados = coef_angulares[i] * X + b
    
    # Calcular a norma (distância) entre os valores reais e estimados
    norma = np.linalg.norm(Moscow - valores_estimados)
    
    # Adicionar a norma ao array norma2
    norma2 = np.append(norma2, norma)

# Imprimir o array com as normas calculadas
print(norma2)

Neste ponto, o código faz o seguinte:

Gera coeficientes angulares aleatórios:


coef_angulares = np.random.uniform(low=0.10, high=0.90, size=100)

Essa linha cria 100 números aleatórios entre 0.10 e 0.90, que serão usados como coeficientes angulares em cada iteração do loop.

Calcula a norma para cada coeficiente angular:


norma = np.linalg.norm(Moscow - (coef_angulares[i] * X + b))

Dentro do loop, essa linha calcula a norma (distância) entre os valores reais (Moscow) e os valores estimados, usando o coeficiente angular atual (coef_angulares[i]).

Armazena as normas em um array:


norma2 = np.append(norma2, norma)

Essa linha adiciona a norma calculada ao array norma2. Assim, ao final do loop, norma2 conterá todas as normas calculadas para cada coeficiente angular.

Espero ter ajudado. Conte com o apoio do Fórum na sua jornada. Fico à disposição.

Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado