Pandas DataFrame을 clustermap의 MultiIndexed 형식으로 변환하는 방법은 무엇입니까?

플로리안 게오르그

'이름'열로 그룹화 된 관찰 목록 인 dataFrame이 있습니다. 나는 그것을 multiIndex 형식으로 바꾸는 데 어려움을 겪고 있습니다.

다음과 같은 것이 있습니다.

    name | ratio | DayOfWeek | HourOfDay
    foo  | 0.7   | Mon       | 0
    foo  | 0.2   | Mon       | 1
    foo  | 0.11  | Mon       | 2
    foo  | 0.45  | Mon       | 3
..
    foo  | 0.2   | Mon       | 23
    foo  | 0.1   | Tue       | 0
    foo  | 0.6   | Tue       | 1
    foo  | 0.2   | Tue       | 2
..
    foo  | 0.1   | Sun       | 23
    bar  | 0.2   | Mon       | 0
    bar  | 0.11  | Mon       | 1
..

등등.

내가 원하는 것은 매일 (전체적으로) '이름'의 '비율'과 며칠 내 특정 시간 사이의 상관 관계를 보여주기 위해 seaborn clustermap과 함께 사용할 수있는 것입니다.

예를 들어 다음과 같은 것이 필요합니다 (올바른지 확실하지 않지만 시도한 것입니다).

                      | foo  | bar | ...
DayOfWeek  HourOfDay  |
Mon        0          | 0.7  | 0.2 | ...
           1          | ...
           2          | ...
...
Tue        0          | 0.1  | ...
           1          | ...
...        2

일단 내가 seaborn의 heatmap / clustermap에서 사용할 수있는 조각으로 xs () 할 수 있기를 바랍니다.

이스 르엘

다음 set_index과 함께 사용할 수 있습니다 unstack.

df = df.set_index(['DayOfWeek','HourOfDay','name'])['ratio'].unstack()
print (df)
name                  bar   foo
DayOfWeek HourOfDay            
Mon       0          0.20  0.70
          1          0.11  0.20
          2           NaN  0.11
          3           NaN  0.45
          23          NaN  0.20
Sun       23          NaN  0.10
Tue       0           NaN  0.10
          1           NaN  0.60
          2           NaN  0.20

그러나 중복이 필요하면 pivot_table같은 일부 집계 FUNC와 함께 mean, sum... :

print (df)
   name  ratio DayOfWeek  HourOfDay
0   foo   0.70       Mon          0 <- duplicate for same name, DayOfWeek and HourOfDay - 0.7
1   foo   0.90       Mon          0 <- duplicate for same name, DayOfWeek and HourOfDay - 0.9
2   foo   0.20       Mon          1
3   foo   0.11       Mon          2
4   foo   0.45       Mon          3
5   foo   0.20       Mon         23
6   foo   0.10       Tue          0
7   foo   0.60       Tue          1
8   foo   0.20       Tue          2
9   foo   0.10       Sun         23
10  bar   0.20       Mon          0
11  bar   0.11       Mon          1


df = df.pivot_table(index=['DayOfWeek','HourOfDay'], 
                    columns='name', 
                    values='ratio', 
                    aggfunc='mean')
print (df)

name                  bar   foo
DayOfWeek HourOfDay            
Mon       0          0.20  0.80 < (0.7 + 0.9)/2 = 0.8
          1          0.11  0.20
          2           NaN  0.11
          3           NaN  0.45
          23          NaN  0.20
Sun       23          NaN  0.10
Tue       0           NaN  0.10
          1           NaN  0.60
          2           NaN  0.20

대안 groupby:

df = df.groupby(['DayOfWeek','HourOfDay','name'])['ratio'].mean().unstack()
print (df)
name                  bar   foo
DayOfWeek HourOfDay            
Mon       0          0.20  0.80 < (0.7 + 0.9)/2 = 0.8
          1          0.11  0.20
          2           NaN  0.11
          3           NaN  0.45
          23          NaN  0.20
Sun       23          NaN  0.10
Tue       0           NaN  0.10
          1           NaN  0.60
          2           NaN  0.20

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

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

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

Pandas Dataframe의 문자열을 목록 또는 문자 배열로 변환하는 방법은 무엇입니까?

분류에서Dev

Pandas DataFrame의 열을 dictnames가 열 이름 인 별도의 dict로 변환하는 방법은 무엇입니까?

분류에서Dev

Pandas DataFrame의 각 행을 새로운 nxm 행렬로 변환하는 방법은 무엇입니까?

분류에서Dev

두 개의 열을 csv 형식 (Python Pandas)으로 하나로 병합하는 방법은 무엇입니까?

분류에서Dev

iloc 표현식을 Pandas에서 Pyspark Dataframe으로 변환하는 방법은 무엇입니까?

분류에서Dev

PHP 배열을 javascript의 varname.arrkey 형식으로 변환하는 방법은 무엇입니까?

분류에서Dev

pandas에서 열의 데이터 유형을 String에서 List로 변환하는 방법은 무엇입니까?

분류에서Dev

Pandas 데이터 프레임의 객체 값을 시간으로 변환하는 방법은 무엇입니까?

분류에서Dev

Python pandas DataFrame을 Matrix Market (MM) 형식으로 구문 분석하는 방법은 무엇입니까?

분류에서Dev

pandas datetime 변환의 시작 날짜를 추가하고 수식을 Excel과 같은 모든 행으로 확장하는 방법은 무엇입니까?

분류에서Dev

JSON 문자열이있는 Pandas DataFrame을 유효한 JSON으로 변환하는 방법은 무엇입니까?

분류에서Dev

to_dict ()를 사용하여 Pandas DataFrame을 목록 사전으로 변환하는 방법은 무엇입니까?

분류에서Dev

3D Numpy 배열을 Pandas Dataframe으로 변환하는 방법은 무엇입니까?

분류에서Dev

Pandas Dataframe의 각 열로 각 열을 그리는 방법은 무엇입니까?

분류에서Dev

Pandas에서 두 열을 형식 열로 변환하는 방법은 무엇입니까?

분류에서Dev

데이터 프레임 줄을 python pandas의 열로 변환하는 방법은 무엇입니까?

분류에서Dev

pandas에서 사전 열을 별도의 열로 변환하는 방법은 무엇입니까?

분류에서Dev

Pandas의 목록을 기반으로 DataFrame의 항목을 필터링하는 방법은 무엇입니까?

분류에서Dev

Pandas DataFrame의 열을 동적으로 독립적으로 이동하는 방법은 무엇입니까?

분류에서Dev

Linux의 명령 줄에서 Calc의 HTML 문서 형식을 Excel 형식으로 변환하는 방법은 무엇입니까?

분류에서Dev

Pandas DataFrame을 바이트로 또는 그 반대로 변환하는 방법은 무엇입니까?

분류에서Dev

Pandas DataFrame에서 NaN을 이전 값의 일부 변경으로 바꾸는 방법은 무엇입니까?

분류에서Dev

다른 DataFrame의 단일 값으로 Pandas DataFrame을 만드는 방법은 무엇입니까?

분류에서Dev

osgjs 형식을 obj 또는 유사한 형식으로 변환하는 방법은 무엇입니까?

분류에서Dev

Python Pandas : DataFrame 인덱스로 변환을 사용하는 방법은 무엇입니까?

분류에서Dev

Pandas DataFrame의 행을 다음 값으로 이동하는 방법은 무엇입니까?

분류에서Dev

gnuplot : 12 시간 형식을 24 시간 형식으로 변환하는 방법은 무엇입니까?

분류에서Dev

정규식으로 숫자의 Vor 변형을 확인하는 방법은 무엇입니까?

분류에서Dev

# 000000 형식으로 BufferedImage의 색상을 변경하는 방법은 무엇입니까?

Related 관련 기사

  1. 1

    Pandas Dataframe의 문자열을 목록 또는 문자 배열로 변환하는 방법은 무엇입니까?

  2. 2

    Pandas DataFrame의 열을 dictnames가 열 이름 인 별도의 dict로 변환하는 방법은 무엇입니까?

  3. 3

    Pandas DataFrame의 각 행을 새로운 nxm 행렬로 변환하는 방법은 무엇입니까?

  4. 4

    두 개의 열을 csv 형식 (Python Pandas)으로 하나로 병합하는 방법은 무엇입니까?

  5. 5

    iloc 표현식을 Pandas에서 Pyspark Dataframe으로 변환하는 방법은 무엇입니까?

  6. 6

    PHP 배열을 javascript의 varname.arrkey 형식으로 변환하는 방법은 무엇입니까?

  7. 7

    pandas에서 열의 데이터 유형을 String에서 List로 변환하는 방법은 무엇입니까?

  8. 8

    Pandas 데이터 프레임의 객체 값을 시간으로 변환하는 방법은 무엇입니까?

  9. 9

    Python pandas DataFrame을 Matrix Market (MM) 형식으로 구문 분석하는 방법은 무엇입니까?

  10. 10

    pandas datetime 변환의 시작 날짜를 추가하고 수식을 Excel과 같은 모든 행으로 확장하는 방법은 무엇입니까?

  11. 11

    JSON 문자열이있는 Pandas DataFrame을 유효한 JSON으로 변환하는 방법은 무엇입니까?

  12. 12

    to_dict ()를 사용하여 Pandas DataFrame을 목록 사전으로 변환하는 방법은 무엇입니까?

  13. 13

    3D Numpy 배열을 Pandas Dataframe으로 변환하는 방법은 무엇입니까?

  14. 14

    Pandas Dataframe의 각 열로 각 열을 그리는 방법은 무엇입니까?

  15. 15

    Pandas에서 두 열을 형식 열로 변환하는 방법은 무엇입니까?

  16. 16

    데이터 프레임 줄을 python pandas의 열로 변환하는 방법은 무엇입니까?

  17. 17

    pandas에서 사전 열을 별도의 열로 변환하는 방법은 무엇입니까?

  18. 18

    Pandas의 목록을 기반으로 DataFrame의 항목을 필터링하는 방법은 무엇입니까?

  19. 19

    Pandas DataFrame의 열을 동적으로 독립적으로 이동하는 방법은 무엇입니까?

  20. 20

    Linux의 명령 줄에서 Calc의 HTML 문서 형식을 Excel 형식으로 변환하는 방법은 무엇입니까?

  21. 21

    Pandas DataFrame을 바이트로 또는 그 반대로 변환하는 방법은 무엇입니까?

  22. 22

    Pandas DataFrame에서 NaN을 이전 값의 일부 변경으로 바꾸는 방법은 무엇입니까?

  23. 23

    다른 DataFrame의 단일 값으로 Pandas DataFrame을 만드는 방법은 무엇입니까?

  24. 24

    osgjs 형식을 obj 또는 유사한 형식으로 변환하는 방법은 무엇입니까?

  25. 25

    Python Pandas : DataFrame 인덱스로 변환을 사용하는 방법은 무엇입니까?

  26. 26

    Pandas DataFrame의 행을 다음 값으로 이동하는 방법은 무엇입니까?

  27. 27

    gnuplot : 12 시간 형식을 24 시간 형식으로 변환하는 방법은 무엇입니까?

  28. 28

    정규식으로 숫자의 Vor 변형을 확인하는 방법은 무엇입니까?

  29. 29

    # 000000 형식으로 BufferedImage의 색상을 변경하는 방법은 무엇입니까?

뜨겁다태그

보관