Pandas DataFrame에서 인덱스별로 열 삭제

Manav Narula 2021년2월9일
Pandas DataFrame에서 인덱스별로 열 삭제

DataFrame은 매우 클 수 있으며 수백 개의 행과 열을 포함 할 수 있습니다. 여러 열을 삭제하는 것과 같은 DataFrame의 기본 유지 관리 작업에 능숙해야합니다. dataframe.drop()메서드를 사용하여 지정된axis에 따라 DataFrame에서 열 또는 행을 드롭 할 수 있습니다. 0은 행, 1은 열입니다. 일부 레이블을 기반으로 제거 할 요소를 식별합니다. 예를 들어 다음 DataFrame에서'a'열을 삭제합니다.

import pandas as pd

df = pd.DataFrame(
    [[10, 6, 7, 8], [1, 9, 12, 14], [5, 8, 10, 6]], columns=["a", "b", "c", "d"]
)

print(df)

df.drop(["a"], axis=1, inplace=True)

print(df)

출력:

    a  b   c   d
0  10  6   7   8
1   1  9  12  14
2   5  8  10   6
   b   c   d
0  6   7   8
1  9  12  14
2  8  10   6

drop 함수에서inplace 매개 변수를 사용하는 것에 주목하십시오. inplace 매개 변수를True로 설정하면 열이 원래 DataFrame에서 제거됩니다. 그렇지 않으면 원본 사본이 반환됩니다.

이 예에서는'a'열을 제거했지만 레이블 이름을dataframe.drop()함수에 전달해야합니다. 대규모 데이터 세트를 처리 할 때 많은 열에 대해 이름 대신 열 인덱스를 사용하여 한 번에 이러한 작업을 처리해야합니다.

DataFrame의 모든 열을 반환하고 해당 인덱스를 사용하여 필요한 열 레이블을dataframe.drop()함수에 전달하는dataframe.columns()메서드를 사용하여이를 달성 할 수 있습니다. 다음 코드 스 니펫은이를 수행하는 방법을 설명합니다.

import pandas as pd

df = pd.DataFrame(
    [[10, 6, 7, 8], [1, 9, 12, 14], [5, 8, 10, 6]], columns=["a", "b", "c", "d"]
)

df.drop(df.columns[[1, 2]], axis=1, inplace=True)

print(df)

출력:

    a   d
0  10   8
1   1  14
2   5   6

인덱스가 1또는 2인 열을 삭제합니다.

또한dataframe.drop()함수에서columns 매개 변수를 언급하기 만하면axis 매개 변수 사용을 피할 수 있습니다. 그러면 열이 삭제 될 것임을 자동으로 나타냅니다. 예:

import pandas as pd

df = pd.DataFrame(
    [[10, 6, 7, 8], [1, 9, 12, 14], [5, 8, 10, 6]], columns=["a", "b", "c", "d"]
)

df.drop(columns=df.columns[[1, 2]], inplace=True)

print(df)

출력:

    a   d
0  10   8
1   1  14
2   5   6
작가: Manav Narula
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

관련 문장 - Pandas DataFrame