Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Sugestão] Faça como eu fiz

Chegou a hora de você testar os conhecimentos desenvolvidos durante a aula. Para isso, vamos utilizar outro dataset em um desafio que será desenvolvido no decorrer do curso. Esse dataset é uma versão modificada do arquivo Oranges vs. Grapefruit presente no site do Kaggle. Portanto, utilizaremos o arquivo raw disponível no GitHub.

Nessa etapa, você deve efetuar a leitura dos dados. Para isso, importe a NumPy e use a função loadtxt. Use o link da url e o parâmetro usecols para pular a primeira coluna. É possível usar np.arange para criar a sequência de números que representam as colunas. Por fim, também é necessário incluir o parâmetro skiprows=1 para que a primeira linha de texto seja desconsiderada na leitura do arquivo.

Importa a função urlopen, que permite abrir uma URL como se fosse um arquivo local (para leitura direta de dados da internet)

from urllib.request import urlopen

Importa a biblioteca NumPy, usada para operações numéricas e manipulação de arrays

import numpy as np

URL do arquivo CSV hospedado no GitHub

url = 'https://raw.githubusercontent.com/allanspadini/numpy/dados/citrus.csv'

Abre a URL como um "arquivo"

url_array = urlopen(url)

Carrega os dados do arquivo CSV, ignorando o cabeçalho (primeira linha) e pulando a primeira coluna (índice 0)

dados_array = np.loadtxt(url_array, delimiter=',', skiprows=1, usecols=np.arange(1, 6))

Impressão parcial

print(dados_array)

Impressão completa dos dados, linha por linha

for linha in dados_array:
    print(linha)
1 resposta
solução!

Olá, Marinaldo! Como vai?

Muito bem! Continue resolvendo os desafios e compartilhando com a comunidade Alura.

Vi que você conseguiu utilizar os dados de um arquivo CSV hospedado, usando muito bem a função urlopen(). Aplicou o parâmetro usecols=np.arange(1, 6) para ignorar a coluna do índice zero e também achei muito interessante você ter explorado a exibição linha a linha com o laço for.

Uma possibilidade interessante para o futuro é adicionar contexto sobre a posição do item, para isso podemos usar a função enumerate(). A função enumerate() permite que você percorra um iterável e tenha acesso tanto ao índice quanto ao valor de cada item simultaneamente. Exemplo:

for indice, linha in enumerate(dados_array):
    print(f"Linha {indice}: {linha}")

Resultado:

Trecho de código exibindo linhas numeradas de dados de matriz, incluindo valores com pontos decimais organizados em formato de lista.

Dessa forma é possível visualizar a posição dos elementos sem ser necessário adicionar uma coluna de índice aos dados. Bem interessante, não é?!

Ícone de sugestão Para saber mais:

Sugestão de conteúdo para você mergulhar ainda mais sobre o tema:

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

AluraConte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!