No entiendo la línea: <code>A[lamdas == 0, :] </code> ¿Qué es lo que hace? Parece slicing pero tiene el <code>lamdas == 0</code> de más.

Hector F

Hector F

Pregunta
studenthace 5 años

No entiendo la línea:

A[lamdas == 0, :]
¿Qué es lo que hace? Parece slicing pero tiene el
lamdas == 0
de más.

5 respuestas
para escribir tu comentario
    Juan David Colorado Alvarez

    Juan David Colorado Alvarez

    studenthace 5 años

    Tienes toda la razón @HectorFranc, se utilizando slicing con el indexe que devuelve la comparación de

    lamdas == 0
    . Pero veamoslo por partes.

    1. Las dimensiones de A -> (4, 4)
    print(f'Dimensiones de A: {A.shape}') # Dimensiones de A: (4, 4)
    1. Cuando se usa la expersión
      lamdas == 0
      , le decimos a Numpy que nos regrese las posiciones donde esa condición se cumple.
    print(f'Posiciones (indices) donde la condicion se cumple: {lambdas == 0}') # Posiciones (indices) donde la condicion se cumple: [False False True False]
    1. Utilizando los indices podríamos obtener el primer vector de la matriz si quisiéramos haríamos.
    print(f'Primer vector de la matriz -> A[0,:] : {A[0,:]} ') # Primer vector de la matriz -> A[0,:] : [0 1 0 0]
    1. Ahora si lo fueramos hacer con indices lo haríamos de la siguiente manera.
    indices = np.array([True, False, False, False]) print(f'indices: {indices}') print(f'Utilizando ahora el slicing para obtener el primer vector -> A[indices, :] : {A[indices, :]}') # indices: [ True False False False] # Utilizando ahora el slicing para obtener el primer vector -> A[indices, :] : [[0 1 0 0]]

    Espero haya sido de ayuda. Te dejo también una imagen para ser más claro.

    platzi.png

    Felipe Andrés González Quintero

    Felipe Andrés González Quintero

    studenthace 5 años

    Tambien tengo la misma duda

    Juan Cruz Stakys

    Juan Cruz Stakys

    studenthace 5 años

    Estuve buscando un poco y experimentando, tal vez este link te sirva Parece ser que A[lambdas == 0, : ] imprime sólo los vectores dentro de la matriz donde lambdas es igual a 0.Screenshot_4.png Prueba experimentando cambiando los parámetros y agregando más, y muy probablemente descubras cómo funciona.

    Juan Cruz Stakys

    Juan Cruz Stakys

    studenthace 5 años

    Tengo la misma duda :/

Curso de Fundamentos de Álgebra Lineal con Python

Curso de Fundamentos de Álgebra Lineal con Python

Conoce y aplica todos los conceptos fundamentales de Álgebra Lineal, la rama de las matemáticas que estudia los vectores, matrices y tensores, que necesitas para desarrollar tu carrera profesional como científico de datos.

Curso de Fundamentos de Álgebra Lineal con Python
Curso de Fundamentos de Álgebra Lineal con Python

Curso de Fundamentos de Álgebra Lineal con Python

Conoce y aplica todos los conceptos fundamentales de Álgebra Lineal, la rama de las matemáticas que estudia los vectores, matrices y tensores, que necesitas para desarrollar tu carrera profesional como científico de datos.