«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как удалить строки из фрейма данных Pandas на основе индекса или условий?

Как удалить строки из фрейма данных Pandas на основе индекса или условий?

Опубликовано 3 ноября 2024 г.
Просматривать:940

How to Drop Rows from a Pandas Dataframe Based on Index or Conditions?

Удаление строк из фрейма данных Pandas

В Pandas мы часто сталкиваемся с необходимостью удалить определенные строки из фрейма данных либо для очистки данных целей или сосредоточиться на конкретных подмножествах. Один из эффективных способов добиться этого — использовать функцию удаления, которая позволяет нам выборочно удалять строки на основе различных критериев.

Чтобы продемонстрировать процесс, давайте рассмотрим фрейм данных df:

import pandas as pd

df = pd.DataFrame({'sales': [2.709, 6.590, 10.103, 15.915, 3.196, 7.907],
                   'discount': [None, None, None, None, None, None],
                   'net_sales': [2.709, 6.590, 10.103, 15.915, 3.196, 7.907],
                   'cogs': [2.245, 5.291, 7.981, 12.686, 2.710, 6.459]})

print(df)

Теперь предположим, что мы хотим удалить строки с определенными порядковыми номерами, представленными списком, например [1, 2, 4]. Для этого мы можем использовать функцию drop следующим образом:

  1. Создайте серию меток индекса, которые вы хотите удалить:
indices_to_drop = [1, 2, 4]
  1. В качестве альтернативы вы также можете удалять строки на основе условий столбца:
conditions_to_drop = df['sales'] > 10
df = df[~conditions_to_drop]

Указав параметр index в drop, мы можем эффективно удалить строки, соответствующие предоставленным индексам, оставив нам желаемое подмножество:

df = df.drop(index=indices_to_drop)
print(df)

В этом случае это приведет к следующему кадру данных:

                  sales  discount  net_sales    cogs
STK_ID RPT_Date                                     
600141 20060331   2.709       NaN      2.709   2.245
       20061231  15.915       NaN     15.915  12.686
       20070630   7.907       NaN      7.907   6.459
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3