기본 팬더: 열 이동
>>> import pandas as pd
>>> import numpy as np
>>> df = pd.DataFrame(np.random.rand(5,5), columns=['a', 'b', 'c', 'd', 'e'])
>>> df['max'] = df.max(axis=1)
>>>
>>> df
a b c d e max
0 0.067423 0.058920 0.999309 0.440547 0.572163 0.999309
1 0.384196 0.732857 0.138881 0.764242 0.096347 0.764242
2 0.900311 0.662776 0.223959 0.903363 0.349328 0.903363
3 0.988267 0.852733 0.913800 0.106388 0.864908 0.988267
4 0.830644 0.647775 0.596375 0.631442 0.907743 0.907743
먼저 기본 사항만 살펴보겠습니다. 열을 이동하거나 드롭하지 않고 원하는 열을 선택하기만 하면 원하는 순서로 볼 수 있습니다.
>>> df['max']
0 0.999309
1 0.764242
2 0.903363
3 0.988267
4 0.907743
Name: max, dtype: float64
또는 열을 두 번 이상 순서에 관계없이 보는 것을 포함하여 열 집합입니다.
>>> df[['d', 'a', 'max', 'b', 'd']]
d. a max b d
0 0.440547 0.067423 0.999309 0.058920 0.440547
1 0.764242 0.384196 0.764242 0.732857 0.764242
2 0.903363 0.900311 0.903363 0.662776 0.903363
3 0.106388 0.988267 0.988267 0.852733 0.106388
4 0.631442 0.830644 0.907743 0.647775 0.631442
따라서 변수에 다시 할당하면 이 재정렬이 영구적으로 됩니다.
df = df[['d', 'a', 'b', 'max', 'e']]
열은 인덱스일 뿐이므로 목록으로 변환하고 조작할 수 있으며 reindex 메서드를 사용하여 열 순서를 변경할 수도 있습니다. 정렬된 이름을 열에 할당하고 싶지는 않습니다. 이렇게 하면 열이 이동하지 않고 이름이 바뀝니다!
>>> df.reindex(columns=sorted(df.columns))
a b d e max
0 0.067423 0.058920 0.440547 0.572163 0.999309
1 0.384196 0.732857 0.764242 0.096347 0.764242
2 0.900311 0.662776 0.903363 0.349328 0.903363
3 0.988267 0.852733 0.106388 0.864908 0.988267
4 0.830644 0.647775 0.631442 0.907743 0.907743
또한 열을 처음 만들 때 원하는 순서대로 열을 만들 수 있습니다
insert
. 기본적으로 []
연산자를 사용하여 열을 추가하면 끝에 배치됩니다.>>> df.insert(3, "min", df.min(axis=1))
>>> df
d a b min max e
0 0.440547 0.067423 0.058920 0.058920 0.999309 0.572163
1 0.764242 0.384196 0.732857 0.096347 0.764242 0.096347
2 0.903363 0.900311 0.662776 0.349328 0.903363 0.349328
3 0.106388 0.988267 0.852733 0.106388 0.988267 0.864908
4 0.631442 0.830644 0.647775 0.631442 0.907743 0.907743
마지막으로 열을 팝한 다음 다시 삽입할 수 있습니다. 열을 팝업하면 예상대로 열이 제거되고 반환됩니다.
>>> col_e = df.pop("e")
>>> df.insert(3, "e", col_e)
>>> df
d a b e min max
0 0.440547 0.067423 0.058920 0.572163 0.058920 0.999309
1 0.764242 0.384196 0.732857 0.096347 0.096347 0.764242
2 0.903363 0.900311 0.662776 0.349328 0.349328 0.903363
3 0.106388 0.988267 0.852733 0.864908 0.106388 0.988267
4 0.631442 0.830644 0.647775 0.907743 0.631442 0.907743
보시다시피 DataFrame에서 열 순서를 조작하는 방법에는 여러 가지가 있습니다.
Reference
이 문제에 관하여(기본 팬더: 열 이동), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/wrighter/basic-pandas-moving-columns-15e2텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)