다음과 같은 데이터를 플로팅하려고합니다.
MONTH TASKTYPE
09/19 A
09/19 B
10/19 B
10/19 B
01/20 A
MONTH
문자열을 포함하는 열입니다. 이제이 코드를 사용하여이 데이터를 플로팅 할 때 :
df.groupby('MONTH')['TASKTYPE'].value_counts().unstack().plot.bar(stacked=True)
사전 순으로 정렬 된 데이터를 얻습니다. 대신 연대순으로 주문하고 목록을 만들었습니다.
month_order = ['09/19','10/19','01/20']
month_order
내 데이터 를 사용 하고 플로팅 하려고했습니다 .
df.groupby('MONTH')['TASKTYPE'].value_counts().unstack().loc[month_order].plot.bar(stacked=True,figsize=(12,8))
그러나 다음 오류 코드가 있습니다.
KeyError: "None of [Index(['09/19', '10/19', '01/20' dtype='object', name='MONTH')] are in the [index]"
코드를 어떻게 수정해야합니까?
감사합니다!
가능하면 datetimes로 변환하십시오.
df['MONTH'] = pd.to_datetime(df['MONTH'], format='%m/%y', errors='coerce')
또는 개월 기간 :
df['MONTH'] = pd.to_datetime(df['MONTH'], format='%m/%y', errors='coerce').dt.to_period('m')
솔루션 전에.
따라서 모두 함께 :
df['MONTH'] = pd.to_datetime(df['MONTH'], format='%m/%y').dt.to_period('m')
df.groupby('MONTH')['TASKTYPE'].value_counts().unstack().plot.bar(stacked=True)
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다