조건에 따라 Pandas 데이터 프레임의 행 값을 정렬하는 방법은 무엇입니까?

Shri

다음 데이터 프레임이 있습니다.

df = pd.DataFrame([['1','aa', 'fff'], ['1', 'aa', 'ggg'], ['1', 'aa', 'eee'],
           ['2','aa', 'eee'], ['2', 'aa', 'ggg'], ['2', 'aa', 'fff'],
           ['3','bb', 'hhh'], ['3', 'bb', 'mmm'], ['3', 'bb', 'kkk'],
           ['3', 'bb', 'jjj'], ['4','bb', 'kkk'], ['4', 'bb', 'mmm'],
           ['4', 'bb', 'hhh'], ['4', 'bb', 'jjj'], ['5','aa', 'ggg'],
           ['5', 'aa', 'eee'], ['5', 'aa', 'fff']], columns=['foo', 'bar','name_input'])

이제 조건에 따라 "name_input"열의 값을 정렬해야합니다. 조건은

  • bar == aa의 경우 행 값 == [ 'eee', 'fff', 'ggg'] 및 bar == bb의 경우 행 값 == [ 'hhh', 'jjj', 'kkk', ' mmm ']

결국 다음과 같은 출력을 목표로하고 있습니다.

df = pd.DataFrame([['1','aa', 'eee'], ['1', 'aa', 'fff'], ['1', 'aa', 'ggg'],
           ['2','aa', 'eee'], ['2', 'aa', 'fff'], ['2', 'aa', 'ggg'],
           ['3','bb', 'hhh'], ['3', 'bb', 'jjj'], ['3', 'bb', 'kkk'],
           ['3', 'bb', 'mmm'], ['4','bb', 'hhh'], ['4', 'bb', 'jjj'],
           ['4', 'bb', 'kkk'], ['4', 'bb', 'mmm'], ['5','aa', 'eee'],
           ['5', 'aa', 'fff'], ['5', 'aa', 'ggg']], columns=['foo', 'bar','name_input'])

행별로 인덱스 재정렬을 시도했습니다. 그러나 작동하지 않는 것 같습니다.

df = df.pivot(index="foo", columns="bar", values="name_input")

어떤 도움이라도 대단히 감사합니다!

Anky

지금까지 내가 이해, 당신은 GROUPBY 다음 원하는 (변환 할 필요 정렬하기 에) 열을 categorical다음 sort_values:

d = {'aa':['eee', 'fff', 'ggg'],'bb':['hhh' ,'jjj', 'kkk','mmm']} #dict of the conditions

final = pd.concat(g.reset_index().assign(name_input = 
            pd.Categorical(g.reset_index()['name_input'],d.get(i),ordered=True))
           .sort_values('name_input') for i,g in 
           df.set_index('name_input').groupby(['foo','bar'])).reindex(df.columns,axis=1)

  foo bar name_input
2   1  aa        eee
0   1  aa        fff
1   1  aa        ggg
0   2  aa        eee
2   2  aa        fff
1   2  aa        ggg
0   3  bb        hhh
3   3  bb        jjj
2   3  bb        kkk
1   3  bb        mmm
2   4  bb        hhh
3   4  bb        jjj
0   4  bb        kkk
1   4  bb        mmm
1   5  aa        eee
2   5  aa        fff
0   5  aa        ggg

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

Pandas 데이터 프레임에서 문자열 값의 조건에 따라 행을 삭제하는 방법은 무엇입니까?

분류에서Dev

Python의 조건에 따라 pandas 데이터 프레임의 두 행을 병합하는 방법은 무엇입니까?

분류에서Dev

R에서 두 개 이상의 열에있는 조건에 따라 데이터 프레임 행을 재정렬하는 방법은 무엇입니까?

분류에서Dev

Pandas 데이터 프레임에서 특정 행의 값을 정렬하는 방법은 무엇입니까?

분류에서Dev

조건에 따라 Pandas 데이터 프레임에서 열을 삭제하는 방법은 무엇입니까?

분류에서Dev

사전의 키 값에 따라 행별로 Pandas 데이터 프레임 열에 값을 추가하는 방법은 무엇입니까?

분류에서Dev

Pandas의 조건에 따라 데이터 프레임 하위 집합의 열에 값을 할당하는 방법은 무엇입니까?

분류에서Dev

조건에 따라 데이터 프레임의 열에 값을 할당하는 방법은 무엇입니까?

분류에서Dev

Pandas의 조건에 따라 한 데이터 프레임에서 다른 데이터 프레임으로 누락 된 행을 추가하는 방법은 무엇입니까?

분류에서Dev

value_counts () 조건에 따라 pandas 데이터 프레임 열의 값을 바꾸는 방법은 무엇입니까?

분류에서Dev

multiindex pandas 데이터 프레임의 행 인덱스 값에 따라 열을 만드는 방법은 무엇입니까?

분류에서Dev

특정 조건에 따라 데이터 프레임의 값을 다른 데이터 프레임의 값으로 바꾸는 방법은 무엇입니까?

분류에서Dev

for 루프의 조건에 따라 데이터 프레임을 연결하는 방법은 무엇입니까?

분류에서Dev

두 개의 다른 열에 설정된 일부 조건에 따라 Pandas 데이터 프레임의 열을 채우는 방법은 무엇입니까?

분류에서Dev

행 인덱스의 조건에 따라 Pandas 데이터 프레임에서 행을 삭제하는 방법

분류에서Dev

파이썬의 조건에 따라 데이터 프레임에서 행을 제거하는 방법은 무엇입니까?

분류에서Dev

R 다음 행의 조건에 따라 데이터 프레임을 필터링하는 방법은 무엇입니까?

분류에서Dev

조건에 따라 데이터 프레임의 모든 열을 곱하는 방법은 무엇입니까?

분류에서Dev

Pandas 데이터 프레임에서 여러 행의 셀 값을 분할하는 방법은 무엇입니까?

분류에서Dev

조건 (특정 열의 동일한 값)에 따라 다른 데이터 프레임의 값을 복사하는 방법은 무엇입니까?

분류에서Dev

특정 조건에 따라 Pandas에서 데이터 프레임에서 중복 행을 제거하는 방법

분류에서Dev

Pandas 데이터 프레임에서 행의 하위 집합을 조작하는 방법은 무엇입니까?

분류에서Dev

열이 df에있는 경우 조건에 따라 Pandas에서 열 데이터 프레임 (df)을 삭제하는 방법은 무엇입니까?

분류에서Dev

string pandas 데이터 프레임 열의 각 값에 따라 특정 문자열을 추가하는 방법은 무엇입니까?

분류에서Dev

R : 데이터 프레임의 행을 셀의 값에 따라 여러 행으로 분할하는 방법은 무엇입니까?

분류에서Dev

데이터 프레임에 대해 Pandas에서 행 값을 재설정하는 방법은 무엇입니까?

분류에서Dev

Pandas 데이터 프레임, 단일 행에 여러 열 값을 설정하는 방법은 무엇입니까?

분류에서Dev

Pandas 데이터 프레임의 데이터 유형에 따라 NaN 값을 채우는 방법은 무엇입니까?

분류에서Dev

pandas 데이터 프레임의 열에서 값을 값에 따라 분류하는 방법은 무엇입니까?

Related 관련 기사

  1. 1

    Pandas 데이터 프레임에서 문자열 값의 조건에 따라 행을 삭제하는 방법은 무엇입니까?

  2. 2

    Python의 조건에 따라 pandas 데이터 프레임의 두 행을 병합하는 방법은 무엇입니까?

  3. 3

    R에서 두 개 이상의 열에있는 조건에 따라 데이터 프레임 행을 재정렬하는 방법은 무엇입니까?

  4. 4

    Pandas 데이터 프레임에서 특정 행의 값을 정렬하는 방법은 무엇입니까?

  5. 5

    조건에 따라 Pandas 데이터 프레임에서 열을 삭제하는 방법은 무엇입니까?

  6. 6

    사전의 키 값에 따라 행별로 Pandas 데이터 프레임 열에 값을 추가하는 방법은 무엇입니까?

  7. 7

    Pandas의 조건에 따라 데이터 프레임 하위 집합의 열에 값을 할당하는 방법은 무엇입니까?

  8. 8

    조건에 따라 데이터 프레임의 열에 값을 할당하는 방법은 무엇입니까?

  9. 9

    Pandas의 조건에 따라 한 데이터 프레임에서 다른 데이터 프레임으로 누락 된 행을 추가하는 방법은 무엇입니까?

  10. 10

    value_counts () 조건에 따라 pandas 데이터 프레임 열의 값을 바꾸는 방법은 무엇입니까?

  11. 11

    multiindex pandas 데이터 프레임의 행 인덱스 값에 따라 열을 만드는 방법은 무엇입니까?

  12. 12

    특정 조건에 따라 데이터 프레임의 값을 다른 데이터 프레임의 값으로 바꾸는 방법은 무엇입니까?

  13. 13

    for 루프의 조건에 따라 데이터 프레임을 연결하는 방법은 무엇입니까?

  14. 14

    두 개의 다른 열에 설정된 일부 조건에 따라 Pandas 데이터 프레임의 열을 채우는 방법은 무엇입니까?

  15. 15

    행 인덱스의 조건에 따라 Pandas 데이터 프레임에서 행을 삭제하는 방법

  16. 16

    파이썬의 조건에 따라 데이터 프레임에서 행을 제거하는 방법은 무엇입니까?

  17. 17

    R 다음 행의 조건에 따라 데이터 프레임을 필터링하는 방법은 무엇입니까?

  18. 18

    조건에 따라 데이터 프레임의 모든 열을 곱하는 방법은 무엇입니까?

  19. 19

    Pandas 데이터 프레임에서 여러 행의 셀 값을 분할하는 방법은 무엇입니까?

  20. 20

    조건 (특정 열의 동일한 값)에 따라 다른 데이터 프레임의 값을 복사하는 방법은 무엇입니까?

  21. 21

    특정 조건에 따라 Pandas에서 데이터 프레임에서 중복 행을 제거하는 방법

  22. 22

    Pandas 데이터 프레임에서 행의 하위 집합을 조작하는 방법은 무엇입니까?

  23. 23

    열이 df에있는 경우 조건에 따라 Pandas에서 열 데이터 프레임 (df)을 삭제하는 방법은 무엇입니까?

  24. 24

    string pandas 데이터 프레임 열의 각 값에 따라 특정 문자열을 추가하는 방법은 무엇입니까?

  25. 25

    R : 데이터 프레임의 행을 셀의 값에 따라 여러 행으로 분할하는 방법은 무엇입니까?

  26. 26

    데이터 프레임에 대해 Pandas에서 행 값을 재설정하는 방법은 무엇입니까?

  27. 27

    Pandas 데이터 프레임, 단일 행에 여러 열 값을 설정하는 방법은 무엇입니까?

  28. 28

    Pandas 데이터 프레임의 데이터 유형에 따라 NaN 값을 채우는 방법은 무엇입니까?

  29. 29

    pandas 데이터 프레임의 열에서 값을 값에 따라 분류하는 방법은 무엇입니까?

뜨겁다태그

보관