실습
17004 단어 udemy파이썬seabornmatplotlib
초학자라도 알기 쉬운 구성으로 매우 좋습니다.
단지, 말한대로 연습하고 있을 뿐이라고 몸에 익은 느낌이 들지 않기 때문에, 지금까지의 「numpy를 알자」 「pandas 입문」 근처의 내용을 조합해, 자전의 데이터를 가시화해 봐 합니다.
사용하는 것은 도덴의 전기 가계부에서 취득한 우리 집의 월별 소비 전력량과 전기 요금
이것을 엑셀 파일로서 다운로드해 DataFrame화한 후, 단순히 barplot 해 보면, 이렇게 됩니다.
import pandas as pd
import seaborn as sns
data = pd.read_excel("Downloads/evaluation of solar power plant.xlsx",
sheetname="(log) tepco")
sns.barplot(x="年月", y="使用量総計(kWh/月)", data=data)
sns.plt.savefig("temp.png")
그래서 어떻게 느끼는 그래프가 완성되었습니다.
월별 데이터를 연간으로 나란히 표시하는 것이 비교 검토하기 쉽지요. 요컨대 동전의 전기 가계부의 그래프 표시 형식입니다만…
그런 형태로 플롯하기 쉽게하기 위해, 원 데이터를 조금 가공합니다.
우선은 원 데이터의 내용을 파악.
import pandas as pd
import seaborn as sns
from pandas import Series, DataFrame
data = pd.read_excel("Downloads/evaluation of solar power plant.xlsx",
sheetname="(log) tepco")
data.head(3)
契約種別 事業所コード 年月 使用日数(日間) 請求金額(円) 使用量総計(kWh/月) 使用量総計(kWh/日) \
0 従量電灯B 603 Oct-13 30 8084 291 10
1 従量電灯B 603 Nov-13 33 8648 312 9
2 従量電灯B 603 Dec-13 29 9275 334 12
data.tail(3)
契約種別 事業所コード 年月 使用日数(日間) 請求金額(円) 使用量総計(kWh/月) 使用量総計(kWh/日) \
27 従量電灯B 603 Jan-16 33 6970 279 8
28 従量電灯B 603 Feb-16 29 7560 304 10
29 従量電灯B 603 3/16/2016 30 6836 280 9
연월 열을 연도 열과 월 열로 분리합니다.
years = Series([date[-2:] for date in data["年月"]])
months = Series([date[:3] for date in data["年月"]])
하지만 여기서 문제가.
data[29]의 연월 열만 문자열 형식이 다릅니다. 「3/1」이 되어 있는 것은 왜다…
우선 다른 사람과 정렬합니다.
months[29] = "Mar"
months.tail(3)
27 Jan
28 Feb
29 Mar
dtype: object
원래 데이터 프레임에 새 열로 추가합니다.
data["年"] = years
data["月"] = months
data.tail(3)
契約種別 事業所コード 年月 使用日数(日間) 請求金額(円) 使用量総計(kWh/月) 使用量総計(kWh/日) \
27 従量電灯B 603 Jan-16 33 6970 279 8
28 従量電灯B 603 Feb-16 29 7560 304 10
29 従量電灯B 603 3/16/2016 30 6836 280 9
単価(円/kWh) 備考 年 月
27 25 NaN 16 Jan
28 25 NaN 16 Feb
29 24 NaN 16 Mar
좋은 느낌입니다.
이 데이터를 hue 옵션에 연 열을 지정하면서 barplot으로 그립니다.
sns.barplot(x="月", y="使用量総計(kWh/月)", hue="年", data=data)
sns.plt.savefig("temp2.png")
이것으로 거의 목적은 달성할 수 있었습니다만, 2013년의 데이터가 10월부터 시작되고 있기 때문에, 스타트 지점이 중도반단입니다.
과감하게 2013년의 데이터는 삭제해, 다음에 청구 금액도 묘화해 봅니다.
data2 = data.drop([0,1,2])
data2.head(5)
契約種別 事業所コード 年月 使用日数(日間) 請求金額(円) 使用量総計(kWh/月) 使用量総計(kWh/日) \
3 従量電灯B 603 Jan-14 33 13183 462 14
4 従量電灯B 603 Feb-14 28 10432 372 13
5 従量電灯B 603 Mar-14 29 12773 443 15
6 従量電灯B 603 Apr-14 30 10227 356 12
7 従量電灯B 603 May-14 29 8478 286 10
sns.barplot(x="月", y="使用量総計(kWh/月)", hue="年", data=data2)
sns.plt.savefig("temp3.png")
sns.plt.close()
sns.barplot(x="月", y="請求金額(円)", hue="年", data=data2)
sns.plt.savefig("temp4.png")
이렇게 완성된 것이, 이하의 사용량 총계 추이 그래프.
이쪽은 청구 금액 추이 그래프.
이렇게 보면 2014년에 비해 2015, 2016년에는 전력 사용량이 상당히 줄어드는 것을 알 수 있네요.
지금까지.
강사 분의 돌리는 사람은 아닙니다만, 매우 알기 쉬운 강습 내용이라고 생각하므로, 흥미가 있는 분은 꼭 부디.
Reference
이 문제에 관하여(실습), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/dodo5522/items/b901683970cefea577c1텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)