본문 바로가기

프로그래밍 언어/Python

[Python] 알파벳 자동 생성 방법, 리스트 구현 알파벳 리스트가 필요한데, 일일이 리스트에 입력하기 귀찮다. 그리고 감사하게도 파이썬에는 해당 작업을 import를 통해 쉽게 해결할 수 있다. from string import ascii_uppercase cell_list = list(ascii_uppercase) print(ascii_uppercase) print(len(ascii_uppercase)) string 모듈에서 ascii_uppercase를 import하여 list형태로 변환하면 리스트에 들어간 알파벳을 쉽게 구현할 수 있다. 소문자로 구현하고 싶으면 하기 import문을 적으면 된다. from string import ascii_lowercase 더보기
파이썬으로 비밀번호 유추하기, 경우의 수 도출 얼마전 같이 강의 듣는 친구와, 장난으로 다른 친구의 핸드폰 비밀번호를 풀고자 했는데, 친구가 힌트를 제시하여, 진지하게 추리가 시작되었다. (비밀번호: 4자리) 주어진 힌트: # 1. 비밀번호에 사용된 숫자는 3개이다. # 2. 4자리 숫자 도합이 20이 넘는다. # 3. 마지막 3자리 숫자 합만 20이 넘는다. # 4. 두번째와 네번째 숫자가 같다. 104개의 경우의수가 나왔다. 여기에 우리가 틀렸던 숫자의 리스트를 만들어준(my_list) 다음에, 상기 경우의수에서 제외한다. -> 리스트를 만들 때, 중복을 없애기 위하여, Set으로 만들어주고, 다시 리스트화 한다. [x for x in password_list if x not in my_list] 범위가 확 줄어버렸다. 후후후... 더보기
[Python] 넘파이/판다스 타임 시리즈: datetime64, pd.to_datetime(), pd.to_timedelta(), pd.date_range() 시간 관련 설명: strftime section datetime documentation dateutil's online documentation - 시간에 따라서 달려있는 데이터를 타임시리즈 데이터라고 한다. 넘파이 타임 시리즈: datetime64 ㄴ 기존의 파이썬 datetime 을 보강하기 위해, date 의 array 도 처리할 수 있게 numpy 에서 64-bit 로 처리하도록 라이브러리를 강화했음. import numpy as np any_date = np.array('2022-05-11',dtype = np.datetime64) ㄴ 뒤에 np.datetime64에서 앞에 얘는 문자가 아니라, 날짜다. 라는 뜻 ex) 45일 전의 날짜, 10일 전의 날짜, 10치의 데이터 등 (바로바로 계산.. 더보기
[Python] 노멀라이징, Feature Scaling: StandardScaler(), MinMaxScaler() 노멀라이징: ㄴ 노멀라이징: 데이터 노멀라이징 하는 이유는, 각각의 레인지를 통일하여, 해석하기 쉽게 하기 위함입니다. - 학습에 들어갈 데이터는 사람이 만든다. 학습은 컴퓨터가 한다. - 머신 러닝에 제일 많이 쓰이는 것이, 제일 많이 쓰는것이 퍼센테이지, - “~률”이 범위를 통일 시켜주는 것, 0에서 100으로 통일 ㄴ 각 건수에 대해서는 범위가 각 다르기 때문에(1~10과 100과 1000) 절대 비교가 불가능하다. ㄴ 인공지능도 범위가 통일되어있지 않은 상태에서 학습을 시키면, 학습이 안된다. - 인공지능에서는 특징이라고 하고, - 데이터 분석에서는 컬럼이라고 한다. - 학습을 시킬 때는 퍼센테이지가 좋지만, 이는 사람이 보기 편하기 위함이라, 이를 컴퓨터에 응용하면, 계산을 잘 못한다. - F.. 더보기
[Python] 구글맵 API: gmaps.geocode 구글맵 API ㄴ 설치 되어있지 않은 경우: 아나콘다 프롬프트웨어 다음을 실행. ㄴ pip install googlemaps 구글 클라우드의 MAPS API 페이지로 이동하여, API 키를 생성한다. https://cloud.google.com/maps-platform/?hl=ko 콘솔로 이동 => Geocoding API 선택 => 사용자인증정보 에서 API 키 생성 API 호출(API Call) import googlemaps gmaps_key = "(본인 고유 key)" gmaps = googlemaps.Client(key=gmaps_key) ㄴ 네트워크 통해서 호출하는 것 ㄴ 여태까지는 컴퓨터에 저장되어있는 라이브러리에서 불러왔었음. result = gmaps.geocode('서울중부경찰서', l.. 더보기
[Python] 피벗 테이블, Pivot Table: pd.pivot_table() 피벗 테이블: pd.pivot_table() ㄴ피봇팅 한다. 즉 컬럼의 값을 열로 만드는것. ㄴ인덱스는 중복이 있으면 안된다. ㄴ따라서, 피봇테이블에 네임 컬럼을 인덱스로 만들겠다는 건 , 중복을 없앤다는 뜻 pd.pivot_table(데이터프레임, index=[ 컬럼명 ], ) ㄴ 피봇 테이블은 수치 데이터만을 (문자데이터는 처리할 수 없으니까) 하나로 합친다. ㄴ 기본적으로 수치데이터를 다 평균으로 해서 계산을 한다. pd.pivot_table(데이터프레임, index=[ 컬럼명 ], aggfunc = np.sum) ㄴ 평균이 아니라, 합으로 계산. ㄴ 넘파이의 합에서 가져온다. pd.pivot_table(df,index=['Name'],aggfunc = np.max) ㄴ 이건 비추, 문자열도 가져온.. 더보기
[Python] 차트 한글처리 코드 차트 한글처리 코드(차트 타이틀, 라벨) import numpy as np import pandas as pd import matplotlib.pyplot as plt import seaborn as sb %matplotlib inline import platform from matplotlib import font_manager, rc plt.rcParams['axes.unicode_minus'] = False if platform.system() == 'Darwin': rc('font', family='AppleGothic') elif platform.system() == 'Windows': path = "c:/Windows/Fonts/malgun.ttf" font_name = font_manager.. 더보기
[Python] 여러개변수 시각화/히트맵: plt.scatterplots(), sb.regplot(), sb.pairplot(), plt.hist2d() 여러개 변수 시각화1 : plt.scatterplots() ㄴ Bivariate Visualization: 두 컬럼간의 관계를 표현한 차트 ㄴ 1. plt의 scatter사용 ㄴ 2. seaborn의 regplot 사용 ㄴ 3. seaborn의 pairplot 사용 - 두 컬럼간의 관계를 차트로 나타내는 방법 - 관계란: 1. 비례 관계, 2. 반비례 관계, 3. 아무 관계 없음. 3가지를 말한다. plt.scatter(data = 데이터프레임, x = 컬럼명1, y = 컬럼명2 ) ㄴ 왜 두 컬럼비교하는 거라서, x축,y축 모두 설정해야한다. import numpy as np import pandas as pd import matplotlib.pyplot as plt import seaborn as s.. 더보기