es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Sí, hay una manera de hacer esto. Puede utilizar el método corr() de pandas para generar una matriz de correlación para todas las columnas en el DataFrame. Luego, puede utilizar la indización booleana para filtrar las columnas que cumplan con su criterio de tener un valor de correlación mayor que 0.2 y menor que 0.8.

    Aquí hay un ejemplo de código que demuestra este enfoque:

    import pandas as pd
    
    # supongamos que df es su DataFrame que contiene los datos mostrados en la imagen
    corr_matrix = df.corr()
    
    # indización booleana para filtrar columnas
    # tenga en cuenta que usamos el valor absoluto de los valores de correlación
    # porque queremos incluir tanto correlaciones positivas como negativas
    columnas_seleccionadas = corr_matrix.columns[(corr_matrix.abs() > 0.2) & (corr_matrix.abs() < 0.8)].tolist()
    
    # imprime la lista de columnas seleccionadas
    print(columnas_seleccionadas)
    

    Esto debería imprimir una lista de nombres de columnas que cumplen con los criterios que especificó. Luego puede utilizar esta lista para generar un subconjunto de su DataFrame original incluyendo solo esas columnas.

Comments are closed.