커뮤니티
포인트
쿠폰
내 강의실
국비 신청 내역
증명서
계정
로그아웃
학습 질문
개발 일지
나의 활동
답변 완료
np araange관련 질문입니다
undefined주차
북마크
박*윤
댓글
3
추천
0
조회수
11
조회수
11
답변 완료

* 겪고 있는 문제 상황을 최대한 자세하게 작성해주세요.

* 문제 해결을 위해 어떤 시도를 해보았는지 구체적으로 함께 알려주세요.


히트맵에서 np arrange관련 질문입니다


1) np.arange(0.5, 23, 1)의 결과 값이


array([ 0.5, 1.5, 2.5, 3.5, 4.5, 5.5, 6.5, 7.5, 8.5, 9.5, 10.5,

11.5, 12.5, 13.5, 14.5, 15.5, 16.5, 17.5, 18.5, 19.5, 20.5, 21.5,

22.5])

이렇게 나오는데



2) 아래에 캡처 화면 히트맵에서 코드

#히트맵에서의 x축

plt.xticks(np.arange(0.5, len(sparta_data_pivot_table.columns), 1), sparta_data_pivot_table.columns) 에서는


똑같이 1번과 같은 np.arrange(0.5, 23, 1) 값인 거 같은데


피벗테이블 x축에서 0.5로 표시된 후 시작해 22.5까지 표시되지 않고


0으로 표시 돼서 23까지 표시되는데


1번과 2번의 차이가 어떤건가요? 왜 결과 값이 둘이 다른걸까요?









스파르타 즉문즉답



작성한 코드 및 에러 메세지

import pandas as pd


sparta_data = pd.read_table('/content/access_detail (4).csv',sep=',')


sparta_data.head()


#파이썬의 type()함수를 쓰면, 데이터의 종류를 확인 할수 있어요 :)
print(type(sparta_data['access_date'][0]))
#sparta_date 정보에서 access_date 열에서 데이터 첫번째 부분만 확인 하면 되겠죠?


format='%Y-%m-%dT%H:%M:%S.%f'
sparta_data['access_date_time'] = pd.to_datetime(sparta_data['access_date'], format='mixed')
sparta_data.tail(5)


print(type(sparta_data["access_date_time"][0]))


sparta_data['access_date_time_weekday'] = sparta_data['access_date_time'].dt.day_name()
sparta_data.tail(5)


sparta_data['access_date_time_hour'] = sparta_data['access_date_time'].dt.hour
sparta_data.tail(5)


weeks = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday']
weekdata = sparta_data.groupby('access_date_time_weekday')['user_id'].count()
weekdata


hourdata = sparta_data.groupby('access_date_time_hour')['user_id'].count()
hourdata


import matplotlib.pyplot as plt
import numpy as np


#그래프 사이즈
plt.figure(figsize=(10,5))
plt.rc('font', family='NanumBarunGothic')
#그래프 x축 y축
plt.bar(weekdata.index, weekdata)


#그래프 명
plt.title('요일별 수강 완료 수강생 수')


#그래프 x축 레이블
plt.xlabel('요일')


#그래프 y축 레이블
plt.ylabel('수강생(명)')


#x축 레이블을 90도로 변환 
plt.xticks(rotation=90)


#그래프 출력
plt.show()



#그래프 사이즈 변경
plt.figure(figsize=(10,5))
plt.rc('font', family='NanumBarunGothic')
#그래프 x축 y축
plt.plot(hourdata.index, hourdata)


#그래프 명
plt.title('시간별 수강 완료 사용자 수')


#그래프 x축 레이블
plt.xlabel('시간')


#그래프 y축 레이블
plt.ylabel('사용자(명)')


#x축 눈금 표시 하기
plt.xticks(np.arange(24))


#그래프 출력
plt.show()


#피벗테이블 만들기


#values : 열에 들어 가는 부분
#index : 행에 들어가는 부분
#aggfunc : 데이터 축약시 사용할 함수


#피벗테이블 만들기


#values : 열에 들어 가는 부분
#index : 행에 들어가는 부분
#aggfunc : 데이터 축약시 사용할 함수


sparta_data_pivot_table = pd.pivot_table(sparta_data, values='user_id', 
                       index=['access_date_time_weekday'],
                       columns=['access_date_time_hour'], 
                       aggfunc="count").agg(weeks)
sparta_data_pivot_table


#그래프 사이즈 변경
plt.figure(figsize=(14,5))


#pcolor를 이용하여 heatmap 그리기
plt.pcolor(sparta_data_pivot_table)


#히트맵에서의 x축
plt.xticks(np.arange(0.5, len(sparta_data_pivot_table.columns), 1), sparta_data_pivot_table.columns)


#히트맵에서의 y축
plt.yticks(np.arange(0.5, len(sparta_data_pivot_table.index), 1), sparta_data_pivot_table.index)


#그래프 명
plt.title('요일별 종료 시간 히트맵')


#그래프 x축 레이블
plt.xlabel('시간')


#그래프 y축 레이블
plt.ylabel('요일')


#plt.colorbar() 명령어를 추가하면 그래프 옆에 숫자별 색상값을 나타내는 컬러바를 보여 줍니다
plt.colorbar()
plt.show()

Tip 1) </> 아이콘을 눌러 코드박스를 만들어 보세요.

Tip 2) Ctrl+A(맥의 경우 Command+A) 단축키로 코드를 한 번에 선택할 수 있어요!




취소
 공유
취소
댓글 0
댓글 알림
나의얼굴