728x90

파이썬 53

작업7 : Python을 통한 GUI 프로그래밍2

저번 GUI 프로그래밍1에 이어서 2도 포스팅해보겠습니다 ​ 오늘 설명드릴 부분의 코드입니다 ​ 오늘 부분은 전체적인 내용은 1편에 있던 찾기 버튼을 눌렀을 때 이제 저희가 보고 싶은 자료가 나와야 하겠죠? 그 부분을 만들어준겁니다 def data(self): getdata1 = self.location_combo1.get() getdata2 = self.location_combo2.get() print(getdata1, getdata2) stn = '속초(90)', '철원(95)', '대관령(100)', '춘천(101)', '강릉(105)', '동해(106)', '원주(114)', '영월(121)', '인제(211)', '홍천(212)', '태백(216)' year = list(range(2000, 2..

파이썬 2022.10.18

작업6 : Python을 통해 GUI 프로그래밍 1

이번 작업은 제가 정말 오랫동안 작업을 진행했습니다 ​ 일주일 정도 걸렸던 것 같습니다 ​ 새로운 코드들을 적용하고 하는데 시간 자체는 오래 걸리지 않았지만 ​ 이 코드들을 원하는 대로 만들고 싶기도 했고 보기 편하게 만들고 싶었기 때문에 시간이 걸린 것 같습니다 이번에는 코드 자체도 148줄로 꽤 길고 설명드려야 할 것도 많기 때문에 ​ 여러 파트로 나누어서 하겠습니다 코드 from hashlib import new from tkinter import * import tkinter.font from tkinter import ttk import pandas as pd import csv #----------------------------------------------------------------..

파이썬 2022.10.18

작업 5 : density를 통해 히스토그램 성질 증명해보기

작업 4와 이어집니다 저번 작업까지 표준정규분포를 그리면서 bins와 sample수를 바꿔가며 분석해봤죠 이번에는 density, 확률 밀도라고 하는 메소드를 설정해 보겠습니다 보기 쉽게 표준 정규 분포 식을 사용해서 라인도 그려봤습니다 제가 그린 히스토그램과 거의 일치하죠? 이거는 작업 4에서 그렸던 히스토그램입니다 다른 점이 보이시나요? 눈썰미 좋으신 분들은 찾으셨을거 같아요 y축이 달라지지 않았습니까? 적업 4 그래프는 4000, 3500, 3000 이렇게 가다가 density 하나만 켰을 뿐인데 0.40, 0.35 이렇게 바뀝니다 왜 그럴까요? 이건 density의 정의를 보면 알 수 있습니다 density는 밀도라는 뜻으로 확률에서 확률 밀도라고 부릅니다 확률 밀도는 그 구간의 도수 / 전체 도..

파이썬 2022.04.09

작업 4 : 표준 정규 분포 그려보기

작업 3과 연결됩니다 저도 공부하며 배워가는 입장에서 하려니까 포스팅 주기가 너무 들쭉날쭉하네요 ㅠㅠ 흔히 표준 정규 분포와 항상 함께 나오는 짝궁 같은 친구가 있습니다 초등학교 때 도수분포표와 함께 배운 히스토그램이라는 친구입니다 히스토그램은 측정값이 존재하는 범위를 몇 개의 구간(급)으로 나눈 경우, 각 구간을 밑변으로 하고 그 구간에 속하는 측정값의 출현 도수에 비례하는 면적을 갖는 기둥(직사각형)으로 배열한 그림입니다 글로만 써놓으니까 어렵죠? 그림으로 봐보겠습니다 코딩 연습 시간(분) 명 10 ~ 30 1 30 ~ 50 8 50~ 70 10 70~ 90 7 90~ 110 12 110 ~ 130 3 계 40 저희가 초등학교 때 보던 도수분포표입니다 일반적인 표와는 다른점이 있습니다 계급들이 모두 ..

파이썬 2022.04.08

작업 3 : np.random 메소드 살펴보기

제가 예전에 설명 드렸던 numpy라는 라이브러리에는 랜덤하게 난수를 생성해주는 random이라는 함수가 있습니다 하지만 아무리 난수라고 해도 지정된 범위 내에서 생성을 해줍니다 범위는 대표적으로 3개가 있습니다 첫 번째는 np.random.rand 입니다 (np는 numpy의 약자로 앞에서 라이브러리를 임포트한걸 전제로 합니다) np.random 부분은 numpy라는 라이브러리 내에 random이라는 메소드를 불러온겁니다 그리고 rand는 구체적인 범위를 알려주는 부분입니다 rand의 경우 0보다 크거나 같고 1보다 작은 범위 내에서 균일한 분포의 난수를 생성해줍니다 EX) np.random.rand(5) => array([0.31912849, 0.50176702, 0.36029099, 0.295245..

파이썬/numpy 2022.04.07

작업 2 : Folium으로 울진 산불 지도에 표시해보기

작업 1과 연결됩니다 저번 첫 번째 작업 때는 ASOS에 풍속 풍향 자료를 가지고 그래프를 그려봤습니다 이번에 해볼 것은 지도에 각 관측 지점에 Marker에 표시를 하고 Popup창 형태로 제가 그린 그림을 보여주게 만들어보려고 합니다 이를 위해서는 Folium이라는 라이브러리가 필요합니다 Folium 라이브러리는 지도 위에 반응형 Objcet들을 놓을 수 있는 라이브러리입니다 지도 위에 Marker를 놓거나 선을 그리고 텍스트를 추가한다거나를 할 수 있습니다 작업 1에 보시면 import folium으로 라이브러리를 불러왔기 때문에 이번 코드에는 포함되지 않았습니다 folium은 생소하신 분들이 꽤 있을거라고 생각합니다 그래서 설명을 최대한 추가해서 포스팅 해보겠습니다 # 가장 먼저 지도를 만드는 부..

파이썬 2022.03.22

작업 1 : ASOS 자료를 이용한 간단한 plot

조금 더 클린 코드면 좋을 듯 싶지만 일단은 코드 구현의 집중을 했습니다 제가 해본것은 강릉과 울진에 산불이 난 시점에 풍향과 풍속을 알아보고 싶었습니다 저도 현재 강릉에 있으면서 강릉에 산불이 났던 3월 5일 12시 경에 풍속이 어마어마 했었습니다 이번 산불의 주된 확산 원인도 강풍과 3년정도 매우 적었던 강수탓에 건조했던 산지라고 합니다 그래서 풍속이 얼마나 강했고 풍향은 어느 방향이었는지를 알아보겠습니다 저는 강릉과 동해, 울진 이렇게 3곳의 3월 2일부터 3월 13일까지의 자료를 이용했습니다 자료를 설정 이유는 먼저 울진만 알아보려 했으나 강릉도 함께 알아보기 위함이고 울진 산불의 경우 3월 2일 오전 11시경부터 발화가 시작되었고 산림청의 보도에 따르면 3월 13일 오전 9시 주불은 잡았다고 했..

Matplotlib를 시작해보자

자 오늘도 파이썬 포스팅을 이어가 보겠습니다 최대한 쉽게 설명해드리려고 원고를 쓰다보니 시간이 오래 걸린점 죄송합니다 저는 기본적인 문법이나 형식적인 것들 보다는 쉽게 배울수 있고 실용적인 파이썬을 하고 싶습니다 형식적으로 이 구문은 어느걸 의미한다 이런거 보다는 그래프를 그리고 제게 주어진 자료를 시각화 하고 이런 파이썬을 하고 싶습니다 그러기 위해서는 matplotlib라는 라이브러리가 가장 좋다고 생각합니다 물론 빅데이터를 다루고 시각화 하는 데는 R프로그래밍이 제일 좋긴 합니다 R프로그래밍도 포스팅을 위해 공부중입니다 자 본론으로 들어와서 matplotlib는 본래 matlab이라는 유료 라이브러리로 인해 만들어졌습니다 미국 대학에서만 무료로 제공하기 때문에 이를 사용하기 위해 파이썬 고수분들이 ..

파이썬 2021.11.02

Numpy에 대해 알아보자

첫 주자는 Numpy 입니다 ​ numpy는 행렬이나 대규모 다차원 배열을 쉽게 처리하도록 도와주는 라이브러리입니다 ​ 데이터 구조, 행렬이나 배열 뿐만 아니라 수치 계산을 위한 모듈들도 모함되어 있어 효율적인 계산을 가능하게 합니다 ​ 다른 라이브러리 Matplotlib나 Pandas, 최근에 나온 Tensor Flow 까지 연동이 될 정도로 범용성이 좋습니다 ​ numpy를 불러오기 위해서는 import numpy as np라는 구문으로 numpy를 import를 시켜야 하고 np는 우리가 원하는 이름으로 설정이 가능합니다 ​ 이렇게 import를 시키면 언제든지 numpy 라이브러리를 사용할 수 있습니다 기본적인 단위는 array로 데이터를 관리하고 연산합니다 array는 행렬이라는 뜻입니다 ​ 위..

파이썬/numpy 2021.10.07

내 파이썬 목표

요즘 문득 드는 생각이 내가 과연 라이브러리 내에 모든 함수를 사용할 수 있을까? 라는 생각이 듭니다 ​ Numpy 내에도 다양한 모듈이 있고 Matplotlib 내에도 다양한 모듈이 있는데 이걸 과연 제대로 사용하고 있는 걸까 생각을 해봤습니다 ​ 그래서 당분간은 라이브러리들에 대해 하나씩 알아보려고 합니다 ​ 제가 설명드릴 라이브러리들은 Numpy, Matplotlib, Pandas, (TensorFlow, Keras, PyTorch) Scipy 이렇게 5개 입니다 ​ 저 라이브러리들 모두 머신러닝에 자주 사용되는 라이브러리입니다 ​ 텐서플로우와 케라스, 파이토치는 하나로 묶은 이유는 이 3개는 사용 용도가 비슷합니다 또한 범용성이 서로서로 좋기 때문에 연결시키며 사용하기 편리합니다 ​ 머신러닝에 관..

파이썬 2021.10.05