>  기사  >  백엔드 개발  >  인덱스 또는 조건을 기반으로 Pandas Dataframe에서 행을 삭제하는 방법은 무엇입니까?

인덱스 또는 조건을 기반으로 Pandas Dataframe에서 행을 삭제하는 방법은 무엇입니까?

Linda Hamilton
Linda Hamilton원래의
2024-11-03 10:50:29787검색

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

Pandas 데이터 프레임에서 행 삭제

Pandas에서는 데이터 정리를 위해 데이터 프레임에서 특정 행을 제거해야 하는 경우가 종종 있습니다. 목적을 달성하거나 특정 하위 집합에 집중합니다. 이를 달성하는 한 가지 효율적인 방법은 다양한 기준에 따라 행을 선택적으로 제거할 수 있는 삭제 기능을 활용하는 것입니다.

프로세스를 설명하기 위해 데이터 프레임 df를 고려해 보겠습니다.

<code class="python">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)
</code>

이제 [1, 2, 4]와 같은 목록으로 표시되는 특정 시퀀스 번호가 있는 행을 삭제한다고 가정합니다. 이렇게 하려면 다음과 같이 삭제 기능을 사용할 수 있습니다.

  1. 제거하려는 일련의 색인 레이블을 생성하세요.
<code class="python">indices_to_drop = [1, 2, 4]</code>
  1. 또는 , 열 조건에 따라 행을 삭제할 수도 있습니다.
<code class="python">conditions_to_drop = df['sales'] > 10
df = df[~conditions_to_drop]</code>

drop에서 인덱스 매개변수를 지정하면 제공된 인덱스에 해당하는 행을 효과적으로 제거하여 원하는 하위 집합을 남길 수 있습니다.

<code class="python">df = df.drop(index=indices_to_drop)
print(df)</code>

이 경우 다음 데이터 프레임이 생성됩니다.

                  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

위 내용은 인덱스 또는 조건을 기반으로 Pandas Dataframe에서 행을 삭제하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.