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

sixtaxe numpy

Não entendi direito essa sintaxe passada pro numpy, poderiam explicar por favor?

dado_transposto[:,0]
dado_transposto[:,1:6]

Obrigado!

1 resposta
solução!

Olá José, tudo bem com você?

A sintaxe apresentada faz parte do fatiamento (slicing) de arrays no NumPy. É uma forma de acessar e manipular partes específicas de arrays multidimensionais. A sintaxe é composta por:

dado[linha_inicial:linha_final,coluna_inicial:coluna_final]

Onde:

  • linha_inicial:linha_final → Define o intervalo de linhas a ser selecionado (o final não é incluído)
  • coluna_inicial:coluna_final → Define o intervalo de colunas a ser selecionado (o final não é incluído)
  • O : (dois pontos) sozinho significa "pegar tudo"

Vamos aos códigos agora?

No primeiro código estamos selecionando todas as linhas de uma coluna específica:

dado_transposto[:, 0]

Pois usamos as seguintes informações para o fatiamento (slicing):

  • : → Seleciona todas as linhas
  • 0 → Seleciona a primeira coluna

Aplicando este exemplo em código temos:

import numpy as np

dado_transposto = np.array([[1, 2, 3], 
                            [4, 5, 6], 
                            [7, 8, 9]])

# Seleciona todas as linhas da primeira coluna
coluna_0 = dado_transposto[:, 0]
print(coluna_0)

Resultado

[1 4 7]

No segundo código, estamos selecionando todas as linhas de colunas em um intervalo:

dado_transposto[:, 1:6]

Onde:

  • : → Seleciona todas as linhas
  • 1:6 → Seleciona as colunas de índice 1 até 5 (o último número, 6, não é incluído)

Aplicando este exemplo em código temos:

import numpy as np

dado_transposto = np.array([[1, 2, 3, 4, 5, 6], 
                            [7, 8, 9, 10, 11, 12], 
                            [13, 14, 15, 16, 17, 18]])

# Seleciona todas as linhas das colunas de 1 a 5
colunas_1_a_5 = dado_transposto[:, 1:6]
print(colunas_1_a_5)

Resultado

[[ 2  3  4  5  6]
 [ 8  9 10 11 12]
 [14 15 16 17 18]]

Este código retorna todas as linhas e as colunas de índice 1 até 5.

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