Pandas DataFrame에서 열을 앞으로 이동

Fariba Laiq 2022년6월13일
Pandas DataFrame에서 열을 앞으로 이동

Python에는 Pandas라는 데이터 분석 라이브러리가 있습니다. Python에서 Pandas를 사용하여 DataFrame에서 다양한 유형의 조작을 수행할 수 있습니다.

이 가이드에서는 pandas DataFrame의 열이 앞으로 이동하도록 재정렬하는 방법을 설명합니다.

Pandas DataFrame에서 열을 앞으로 이동

DataFrame에서 열의 위치를 ​​재정렬하려고 한다고 가정합니다. Pandas는 단일 열을 Pandas DataFrame 앞으로 이동하는 insert()reindex() 메서드를 제공합니다.

pop()insert() 메서드 사용

아이디어는 pop() 메서드를 사용하여 앞으로 이동하려는 열을 제거하는 것입니다. 그런 다음 삽입할 위치를 지정하여 insert() 메서드를 사용하여 DataFrame에 열을 다시 삽입합니다.

다음 코드에는 학생 기록으로 구성된 DataFrame이 있습니다. 우리의 목표는 Name 열을 앞으로 옮기는 것입니다.

먼저 pop() 메서드를 사용하여 제거하고 pop() 메서드는 삭제하려는 열의 레이블을 매개변수로 사용하여 반환합니다. 반환된 열을 col에 저장했습니다.

insert() 메서드를 통해 위치를 loc=0(첫 번째 열 위치), 열 이름 및 실제 열로 정의하여 열을 DataFrame으로 다시 푸시했습니다.

예제 코드:

# Python 3.x
import pandas as pd

student = {
    "Course": ["Java", "Python", "C++", "Dart"],
    "Marks": [70, 80, 90, 60],
    "Age": [19, 20, 21, 19],
    "Name": ["Jhon", "Aliya", "Nate", "Amber"],
}
df = pd.DataFrame(student)
print(df)
col = df.pop("Name")
df.insert(loc=0, column="Name", value=col)
print(df)

출력:

$python3 Main.py

   Course  Marks  Age   Name
0    Java     70   19   Jhon
1  Python     80   20  Aliya
2     C++     90   21   Nate
3    Dart     60   19  Amber
    Name  Course  Marks  Age
0   Jhon    Java     70   19
1  Aliya  Python     80   20
2   Nate     C++     90   21
3  Amber    Dart     60   19

reindex() 메서드 사용

열을 재인덱싱하여 열을 재정렬할 수 있습니다. reindex() 메서드는 열을 재정렬합니다.

이 방법은 pandas.DataFrame 모듈에서 사용할 수 있습니다. 원하는 순서대로 열 이름 목록을 제공하고 listDataFramereindex() 메서드에 전달하여 업데이트된 DataFrame을 반환합니다.

예제 코드:

# Python 3.x
import pandas as pd

student = {
    "Course": ["Java", "Python", "C++", "Dart"],
    "Marks": [70, 80, 90, 60],
    "Age": [19, 20, 21, 19],
    "Name": ["Jhon", "Aliya", "Nate", "Amber"],
}
df = pd.DataFrame(student)
print(df)
df = pd.DataFrame.reindex(df, columns=["Name", "Course", "Marks", "Age"])
print(df)

출력:

$python3 Main.py

   Course  Marks  Age   Name
0    Java     70   19   Jhon
1  Python     80   20  Aliya
2     C++     90   21   Nate
3    Dart     60   19  Amber
    Name  Course  Marks  Age
0   Jhon    Java     70   19
1  Aliya  Python     80   20
2   Nate     C++     90   21
3  Amber    Dart     60   19
작가: Fariba Laiq
Fariba Laiq avatar Fariba Laiq avatar

I am Fariba Laiq from Pakistan. An android app developer, technical content writer, and coding instructor. Writing has always been one of my passions. I love to learn, implement and convey my knowledge to others.

LinkedIn

관련 문장 - Pandas DataFrame