Удаление строк с повторяющимся индексом в многоиндексном фрейме данных

#python #dataframe #multi-index

#python #фрейм данных #многоиндексный

Вопрос:

У меня есть следующий фрейм данных с двойным индексом. Как я могу удалить те строки, в которых первый индекс равен второму индексу?

 First_index             Second_index          Column                          

PitchAngle              RotorSpeed         -0.163742
GenSpeed                PitchAngle         -0.163689
GearboxBearingTemp      PitchAngle         -0.063614                                              
GenSpeed                GenSpeed            0.325689
AmbientTemperature      AmbientTemperature  0.569469
WindDirection           WindDirection      -0.152658
 

Комментарии:

1. Вы действительно имеете в виду удалить строку или адаптировать мультииндекс, где первый индекс равен второму?

2. Я имею в виду удаление строки, поэтому меня интересует только получение тех строк, где первый и второй индексы отличаются

Ответ №1:

Выполните следующие действия:

Загрузка модулей

 import io
import pandas as pd
 

Создайте данные

 df = pd.read_csv(io.StringIO("""
First_index             Second_index          Column                          
PitchAngle              RotorSpeed         -0.163742
GenSpeed                PitchAngle         -0.163689
GearboxBearingTemp      PitchAngle         -0.063614                                              
GenSpeed                GenSpeed            0.325689
AmbientTemperature      AmbientTemperature  0.569469
WindDirection           WindDirection      -0.152658
"""), sep="ss ", engine="python")
 

Не выбирайте строки, в которых первый индекс равен второму индексу

 df[~(df.First_index == df.Second_index)]