일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- tensorflow
- 한빛미디어서평단
- 매틀랩
- Tistory
- 월간결산
- 한빛미디어
- MySQL
- 딥러닝
- 파이썬 시각화
- 통계학
- SQL
- 파이썬
- 블로그
- 시각화
- 리눅스
- Visualization
- Google Analytics
- python visualization
- Linux
- Python
- 서평
- 텐서플로
- Pandas
- 티스토리
- Blog
- matplotlib
- 독후감
- MATLAB
- 서평단
- Ga
- Today
- Total
목록Python (197)
pbj0812의 코딩 일기
0. 목표 - PIL을 이용한 이미지 생성시간 추출 * os.path.getmtime()을 이용해도 됨 1. 실습 1) library 호출 from PIL import Image 2) 이미지 호출 imgfile = './kalimba_ori.jpeg' img = Image.open(imgfile) 3) 메타 데이터 확보 meta_data = img._getexif() 4) 메타 데이터 확인 - 36867 이 생성시각 print(meta_data) - 결과 {36864: b'0220', 37121: b'\x01\x02\x03\x00', 37377: (491, 100), 36867: '2020:10:17 00:42:57', 36868: '2020:10:17 00:42:57', 37378: (153, 100)..
0. 목표 - 아래와 같은 타임스탬프 어플 클론 코딩 1. 실습 1) 사진 준비 2) library 호출 import cv2 import numpy as np from PIL import Image import math import time import datetime 3) 이미지 불러오기 imgfile = './kalimba_ori.jpeg' image = cv2.imread(imgfile) 4) 정사각형으로 만들기 - 어플의 형태는 정사각형 그림이므로 위 사진을 정사각형으로 변형 - x 보다 y가 크면 최소 길이를 y로 잡고 반대면 x로 잡음 - 사진의 중앙에서 최소 길이의 절반만큼 빼고 더한 구간을 새로운 이미지로 설정 x, y, z = np.shape(image) if x > y: min_len ..
0. 목표 - bokeh 라이브러리를 통한 산점도 그리기 1. 실습 1) 설치 pip install bokeh 2) 데이터 생성 - x좌표, y좌표, 원의 반지름 순 x = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] y = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] z = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] 3) 데이터 프레임화 df = pd.DataFrame({ 'x' : x, 'y' : y, 'z' : z }) 4) figure 객체 생성 p = figure() 5) 산점도 제작 - radius를 적당히 나눠주지 않으면 원이 튀어나감 p.scatter(df['x'], df['y'], radius=df['z']/10, fill_color='black',..
0. 목표 - celluloid 를 활용한 gif 애니메이션 제작 1. 실습 1) celluoid 설치 pip install celluloid 2) library 호출 import numpy as np from matplotlib import pyplot as plt from celluloid import Camera 3) 피규어 객체 생성 fig = plt.figure() ax = fig.subplots() 4) 카메라 객체 생성 camera = Camera(fig) 5) 데이터 생성 x = np.linspace(0, 2 * np.pi) 6) plot 제작 - x 는 그대로 놔둬서 고정시키고, y가 되는 부분인 np.sin(x) 부분에 i 를 더해줘서 밀려나가는 형식으로 제작 - camera.snape..
0. 목표 - python scatter plot을 이용한 구 그리기 1. 실습 1) library 호출 import numpy as np import matplotlib.pyplot as plt 2) 데이터 생성 x = np.linspace(-1, 1, 101) y = np.linspace(-1, 1, 101) 3) 격자 데이터 생성 X, Y = np.meshgrid(x, y) 4) 격자 확인 fig = plt.figure() fig.set_size_inches(15, 15) plt.scatter(X, Y) 5) Z 생성 함수 - z = 1 - (x^2 + y^2) - 뒤가 더 클 경우엔 nan으로 저장 def Z_fun(x, y): result = np.sqrt(1 - (x ** 2 + y ** 2)..
0. 목표 - 파동의 개수 구하기 1. 실습 1) library 호출 import numpy as np import matplotlib.pyplot as plt 2) 데이터 생성 - x : 0 ~ 50pi를 1000등분 - y : sin(x) x = np.linspace(0, 50*np.pi, 1000) y = np.sin(x) 3) 그림 fig = plt.figure() fig.set_size_inches(15, 5) plt.plot(x, y) 4) 함수 생성 (1) 더미 리스트를 만들어 전체 평균보다 해당 값이 크면 0, 작으면 1을 채워넣음(0, 1) (2) 결과 리스트를 만들어 더미 리스트에서 현재 위치의 값과 뒤의 위치의 값의 합을 채워넣음(0, 1, 2) (3) 결과 리스트의 값이 1인 위치인..
0. 목표 - python으로 3차원 그림 그리기 1. 데이터 준비 1) library 호출 import numpy as np import matplotlib.pyplot as plt from matplotlib import cm 2) 데이터 생성 - x, y : 0 ~ 100 을 101 등분 x = np.linspace(0, 100, 101) y = np.linspace(0, 100, 101) 3) meshgrid 형태 제작 X, Y = np.meshgrid(x, y) 4) X, Y 확인 print(X) print(Y) - 결과 [[ 0. 1. 2. ... 98. 99. 100.] [ 0. 1. 2. ... 98. 99. 100.] [ 0. 1. 2. ... 98. 99. 100.] ... [ 0. 1..
0. 목표 - python을 이용한 최소제곱법과 경사하강법 구현(1차식 한정) 1. 실습 1) library 호출 import numpy as np import pandas as pd import matplotlib.pyplot as plt 2) 데이터 생성 - 대략 2x + 1 의 느낌으로 생성 df = pd.DataFrame({"x" : [1, 2, 3, 4, 5, 6, 7, 8, 9, 10], "y" : [3.1, 5.2, 7.1, 9.2, 11.2, 13.1, 15.2, 17.1, 18.9, 20.9]}) 3) 그림 plt.plot(df['x'], df['y']) plt.axis([0, max(df['x']), 0, max(df['y'])]) 4) 최소제곱법 테스트용 함수 구현 - 3x + 1 #..
0. 목표 - python을 통한 제곱합(SS), 제곱평균(MS), 처리간 제곱합(SSB), 처리내 제곱합(SSE), 총제곱합(SST) 구현 1. 기본 이론 1) 제곱합(Sum of Squares) - 관측값과 평균의 차이를 제곱하여 더해준 값, 변동(variation) 2) 제곱평균(Mean Squre) - 제곱합을 자유도로 나누어 준 값, 분산 3) 처리간 제곱합(Sum of Squares Between Treatments) - 각 처리평균 간의 차이를 측정 4) 처리내 제곱합(Sum of Squares due to Error) - 개별 관측값이 각 처리 평균으로부터 떨어진 차이를 측정 5) 총제곱합(Sum of Squares Total) - 개별관측값이 총평균으로부터 떨어진 차이를 측정 - 총 제곱..
0. 목표 - python을 이용한 십진법 변환기 제작 1. 플로우 차트 - 소수점을 기준으로 정수 부분과 소수 부분을 분리 - 정수 부분은 뒤집어서 순서대로 계산 - 각 계산결과 덧셈 2. 실습 1) 정수 변환 모듈 (1) list 형태로 받아서 숫자 하나씩 쪼갬(ex : 1101 => 1, 1, 0, 1) (2) 뒤집기 (3) for 문을 이용하여 십진법 변환 def numeral_int(inp, num): tmp = list(inp) tmp.reverse() len_inp = len(inp) result = 0 for i in range(len_inp): result += int(tmp[i]) * (num ** i) return result - 테스트 print(numeral_int('1101', ..