열 값을 기준으로 Pandas DataFrame에서 행을 필터링하는 방법

Python

Pandas DataFrames에서 행 필터링

Pandas는 데이터 조작 및 분석을 위한 Python의 강력한 라이브러리입니다. 일반적인 작업은 SQL의 SELECT * FROM 테이블 WHERE column_name = some_value와 유사하게 열 값을 기반으로 DataFrame에서 행을 선택하는 것입니다.

이 가이드에서는 Pandas에서 이를 달성하기 위한 다양한 방법을 안내하여 데이터를 효율적으로 쉽게 필터링할 수 있습니다. 초보자이든 숙련된 사용자이든 이 팁은 데이터 처리 기술을 향상시키는 데 도움이 됩니다.

명령 설명
pd.DataFrame(data) 데이터 사전에서 DataFrame을 만듭니다.
df[column_name] 이름으로 DataFrame의 열에 액세스합니다.
df[condition] 열에 적용된 조건을 기준으로 DataFrame을 필터링합니다.
print(selected_rows) DataFrame 또는 그 하위 집합을 콘솔에 인쇄합니다.
df[df['Age'] >df[df['Age'] > 25] 'Age' 열 값이 25보다 큰 행을 선택합니다.
df[df['City'] == 'Chicago'] '도시' 열 값이 '시카고'와 동일한 행을 선택합니다.

Pandas의 DataFrame 행 선택 이해

제공된 스크립트는 Python의 Pandas 라이브러리를 사용하여 열 값을 기반으로 DataFrame에서 행을 선택하는 방법을 보여줍니다. 첫 번째 스크립트는 다음과 같이 Pandas 라이브러리를 가져오는 것으로 시작됩니다. 명령. 그런 다음 데이터 사전을 사용하여 샘플 DataFrame을 생성합니다. 이 사전은 다음과 같은 DataFrame으로 변환됩니다. 명령. 그런 다음 스크립트는 행 선택을 위한 두 가지 방법을 보여줍니다. 즉, 'Age' 열 값이 25보다 큰 행을 선택하는 것입니다. , 'City' 열 값이 'Chicago'인 행을 선택하는 방법은 다음과 같습니다. . 필터링된 DataFrame은 다음을 사용하여 인쇄됩니다. 선택한 행을 표시하는 기능입니다.

두 번째 스크립트는 비슷한 구조를 따르지만 다른 데이터와 선택 기준을 사용합니다. '제품', '가격', '재고' 열을 포함한 제품 정보가 포함된 DataFrame을 생성합니다. 'Price'가 200보다 작거나 같은 행이 선택됩니다.

Pandas에서 DataFrame 행을 선택하는 고급 기술

부울 인덱싱을 사용한 기본 필터링 외에도 Pandas는 열 값을 기반으로 행을 선택하는 고급 기술을 제공합니다. 한 가지 강력한 방법은 다음을 사용하는 것입니다. 쿼리 표현식을 사용하여 행을 필터링할 수 있는 함수를 사용하면 구문을 더 깔끔하고 종종 더 직관적으로 만들 수 있습니다. 예를 들어, , 당신은 쓸 수 있습니다 . 이 방법은 더 복잡한 조건을 처리하거나 열 이름에 공백이 포함된 경우 특히 유용합니다. 추가적으로, isin() 함수는 값 목록을 기반으로 행을 필터링하려는 경우 유용합니다. 예를 들어 '도시' 열 값이 '시카고' 또는 '뉴욕'인 행을 선택하려면 다음을 사용할 수 있습니다. .

또 다른 기술은 다음과 같습니다. 그리고 인덱서. 그만큼 인덱서는 레이블 기반이므로 행 레이블과 열 이름을 기반으로 행을 선택할 수 있습니다. iloc 정수 위치 기반이며 행 및 열 번호로 선택할 수 있습니다. 이러한 유연성은 다른 열에 적용된 조건을 기반으로 행을 선택하는 데 특히 유용합니다. 예를 들어, 25세 이상의 개인 이름을 반환합니다. 이러한 방법은 Pandas에서 데이터를 효율적으로 처리하고 분석하기 위한 툴킷을 확장하여 더 읽기 쉽고 유지 관리하기 쉬운 코드를 제공합니다.

  1. 여러 조건에 따라 행을 선택하려면 어떻게 해야 합니까?
  2. 당신은 사용할 수 있습니다 다음과 같은 논리 연산자로 조건을 함수화하거나 결합합니다. 그리고 . 예를 들어, df[(df['Age'] > 25) & (df['City'] == 'Chicago')].
  3. 값 목록을 기반으로 행을 필터링할 수 있나요?
  4. 예, 다음을 사용하세요. 기능. 예를 들어, .
  5. 차이점은 무엇 입니까? 그리고 ?
  6. 라벨 기반이지만 정수 위치 기반입니다. 사용 행/열 레이블이 있고 iloc 행/열 인덱스를 사용합니다.
  7. 행을 필터링하는 동안 특정 열을 선택하려면 어떻게 해야 합니까?
  8. 당신이 사용할 수있는 . 예를 들어, .
  9. 행을 선택할 때 누락된 값을 어떻게 처리합니까?
  10. 사용 누락된 값이 있는 행을 제거하는 함수 또는 지정된 값으로 대체합니다.
  11. 정규식을 사용하여 행을 필터링할 수 있나요?
  12. 예, 기능을 매개변수를 사용하면 정규식 패턴을 기반으로 행을 필터링할 수 있습니다. 예를 들어, .
  13. 인덱스를 기준으로 행을 필터링하려면 어떻게 해야 합니까?
  14. 당신이 사용할 수있는 인덱스 이름으로. 예를 들어, .
  15. 열 이름에 공백이나 특수 문자가 포함되어 있으면 어떻게 되나요?
  16. 사용 백틱을 사용하여 이러한 열 이름을 처리할 수 있는 함수입니다. 예를 들어, .

DataFrame 행 선택 기술에 대한 최종 생각

Pandas의 열 값을 기반으로 DataFrame에서 행을 선택하는 것은 데이터 조작에 중요한 기술입니다. 부울 인덱싱을 포함하여 논의된 다양한 방법 , , 라벨 기반 및 정수 위치 기반 인덱싱 그리고 iloc, 데이터를 효율적으로 필터링하기 위한 강력한 도구를 제공합니다. 이러한 기술을 숙달하면 더 나은 데이터 분석과 더 깨끗하고 유지 관리하기 쉬운 코드가 가능해집니다.