1
resposta

Seleção Array

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Olá, boa noite fiquei com dúvida nessa questão. Poderia me explicar a lógica dessa resposta?

1 resposta

Olá STEFFANE, tudo belezinha?

A expressão usada é uma técnica de slicing(Fatiamento) e para fazer "cortar" nossa matriz. Vamos levar em consideração o exemplo temos a matriz abaixo:

import numpy as np

dados = np.array(
    [#    Coluna 0   coluna 1   coluna 2
        ['Roberto', 'casado', 'masculino'], # linha 0
        ['Sheila', 'solteiro', 'feminino'], # linha 1
        ['Bruno', 'solteiro', 'masculino'], # linha 2
        ['Rita', 'casado', 'feminino']  # linha 3
    ]
)

Repare em nossa matriz, e perceba que a linha 0 e a linha 2 temos as duas pessoas do sexo masculino, que é justamente nossa resposta para pergunta.

Então quando vamos fatiar uma matriz podemos definir o ** inicio, o final e o Frequencia**, ou seja, dados[Linha_Incial: Linha_Final:Frequencia], se por exemplo temos o código abaixo:

dados[0::2]

Saida"

#    Coluna 0   coluna 1   coluna 2
[['Roberto' 'casado' 'masculino'] # linha 0
 ['Bruno' 'solteiro' 'masculino']] # linha 2

No exemplo acima fatiamos desde a linha 0 ate a ultima pulando sempre a cada duas linhas.

Mas se queremos somente o nome e estado civil, precisamos fatiar a coluna também, exibindo somente a coluna 0 e a coluna 1 e podemos fazer isso seguindo a mesma logica dados[Linha_Incial: Linha_Final :Frequencia , coluna_Incial: coluna_Final :Frequencia ], por isso no final chegamos neste código:

dados[0::2, :2] #repare que na coluna não colocamos frequência, pois só precisamos fatiando da coluna 0 ate a coluna 1.

Saída:

#Coluna 0   coluna 1
['Roberto', 'casado'], # linha 0
['Bruno', 'solteiro'], # linha 2

Se ainda tiver alguma dúvida, estou por aqui. Ótimos estudos e um forte abraço!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!