>백엔드 개발 >파이썬 튜토리얼 >Pandas에서 행 데이터를 삭제하는 기술에 대한 심층적인 이해

Pandas에서 행 데이터를 삭제하는 기술에 대한 심층적인 이해

WBOY
WBOY원래의
2024-01-09 11:21:55939검색

Pandas에서 행 데이터를 삭제하는 기술에 대한 심층적인 이해

데이터 처리 기술: 팬더에서 행을 삭제하는 방법에 대한 자세한 설명

데이터 처리 중에 DataFrame에서 특정 데이터 행을 삭제해야 하는 경우가 종종 있습니다. Pandas는 행 데이터 삭제 작업을 구현하는 다양한 방법을 제공하는 강력한 데이터 처리 라이브러리입니다. 이 기사에서는 팬더에서 행을 삭제하는 몇 가지 일반적인 방법을 자세히 소개하고 특정 코드 예제를 제공합니다.

  1. drop 메소드 사용
    pandas의 DataFrame 객체는 행 인덱스 또는 행 레이블을 지정하여 행을 삭제할 수 있는 drop 메소드를 제공합니다. 다음은 간단한 예입니다.
import pandas as pd

data = {'Name': ['Tom', 'Nick', 'John', 'David'],
        'Age': [20, 25, 30, 35],
        'Gender': ['M', 'M', 'M', 'M']}

df = pd.DataFrame(data)

# 删除索引为2的行数据
df = df.drop(2)

print(df)

출력은 다음과 같습니다.

   Name  Age Gender
0   Tom   20      M
1  Nick   25      M
3  David  35      M

보시다시피 drop 메소드는 새 DataFrame을 반환하고 결과에서 지정된 행을 삭제합니다.

  1. 부울 인덱싱 사용
    경우에 따라 조건에 따라 행을 삭제해야 할 수도 있습니다. Pandas의 부울 인덱싱은 이를 수행하는 간단한 방법을 제공합니다. 예는 다음과 같습니다.
import pandas as pd

data = {'Name': ['Tom', 'Nick', 'John', 'David'],
        'Age': [20, 25, 30, 35],
        'Gender': ['M', 'M', 'M', 'M']}

df = pd.DataFrame(data)

# 删除所有年龄小于30的行数据
df = df[df['Age'] >= 30]

print(df)

출력은 다음과 같습니다.

   Name  Age Gender
2  John  30      M
3  David 35      M

보다시피 부울 인덱스를 True 또는 False로 설정하면 유지해야 하는 행 데이터를 필터링할 수 있습니다.

  1. 슬라이싱 작업 사용
    연속된 여러 행의 데이터를 삭제하려면 슬라이싱 작업을 사용하면 됩니다. 예를 들면 다음과 같습니다.
import pandas as pd

data = {'Name': ['Tom', 'Nick', 'John', 'David'],
        'Age': [20, 25, 30, 35],
        'Gender': ['M', 'M', 'M', 'M']}

df = pd.DataFrame(data)

# 删除索引为1到2的行数据
df = df.drop(df.index[1:3])

print(df)

출력은 다음과 같습니다.

   Name  Age Gender
0   Tom   20      M
3  David 35      M

보다시피 슬라이싱 작업의 인덱스 범위를 설정하면 연속된 여러 행의 데이터를 삭제할 수 있습니다.

  1. set_index 및 Reset_index 메소드를 사용하세요
    DataFrame의 행 인덱스가 숫자 유형이고 누락된 행이 있는 경우 set_index 및 Reset_index 메소드를 사용하여 누락된 행을 삭제할 수 있습니다. 예는 다음과 같습니다.
import pandas as pd

data = {'Name': ['Tom', 'Nick', 'John', 'David'],
        'Age': [20, 25, 30, 35],
        'Gender': ['M', 'M', 'M', 'M']}

df = pd.DataFrame(data)

# 设置第三行的索引为缺失
df.set_index(pd.Index(['0', '1', '3']), inplace=True)

# 重置索引并删除缺失的行
df.reset_index(drop=True, inplace=True)

print(df)

출력은 다음과 같습니다.

   Name  Age Gender
0   Tom   20      M
1  Nick  25      M
2  David 35      M

보다시피 인덱스를 누락된 행으로 설정하고 Reset_index 메서드를 사용하여 인덱스를 재설정하고 누락된 행을 삭제하면 삭제할 수 있습니다. 특정 행.

요약하자면, Pandas DataFrame에서 행 데이터를 삭제하는 몇 가지 일반적인 방법이 있습니다. 다양한 요구에 따라 데이터 처리 작업을 완료하는 데 적합한 방법을 선택할 수 있습니다. 실제 적용에서는 특정 상황에 따라 행 데이터를 삭제하는 적절한 방법을 선택하여 데이터 처리의 효율성과 정확성을 향상시킬 수 있습니다.

위 내용은 Pandas에서 행 데이터를 삭제하는 기술에 대한 심층적인 이해의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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