목록Python (14)
뒤죽박죽 데이터분석 일기장
안녕하세요. 저번 포스트에서 구한 일별 검색량을 기준으로 월별 평균 검색량을 구해 보도록 하겠습니다. 저번 포스트에서 수집된 데이터 프레임은 아래와 같습니다. 하지만, 검색량이 없는 날짜는 날짜가 저장되지 않습니다. df['period'] 따라서 해당 기간 전체 날짜를 가진 Dataframe을 만든 후 merge를 시키는 방법으로 접근해 보겠습니다. # 날짜만 있는 데이터 프레임을 생성합니다 df_date = pd.DataFrame(dates) # column 값을 period로 설정 df_date.columns = ['period'] # 기존에 있던 데이터프레임을 column 'period'를 기준으로 left merge 합니다. df = df_date.merge(df,how='left', on='pe..
안녕하세요. 이번 포스트에선 네이버 데이터랩에서 특정 키워드의 검색량을 네이버 API를 통해 추출해 보겠습니다. 네이버는 네이버 데이터랩이라는 서비스를 통해 특정 검색어의 검색량 정보를 제공합니다. 굳이 API가 없더라도 웹사이트에서 충분히 다양한 통계값을 얻을 수 있습니다. 하지만 월별 평균값은 주어지지 않기 때문에 일별 통계랑을 가져와서 월별 평균까지 내보는 것이 이번 포스트의 목표입니다. ※ 주의사항 네이버 데이터랩에서 제공되는 검색량 정보는 절대 수치가 아닙니다. 예를 들어 ‘카카오’라는 단어를 검색하게 된다면 설정한 날짜 중 카카오라는 검색어가 가장 많이 검색된던 날의 수치가 100으로 설정되고 이 값에 따라서 다른 값들이 비율로 조정됩니다. 따라서 이 수치들은 상대적입니다. 1. 네이버 데이터..
안녕하세요. Dayconic 입니다. 이번 포스트는 파이썬에서 다양한 기능들을 사용하기 위한 필수 단계인 모듈과 패캐지 개념에 대해서 알아보려고 합니다. 모듈이란? : 변수, 함수, 클래스를 하나의 파일(.py)로 모아서 코드를 작성한 것 패키지이란? : 여러개의 모듈 파일을 디렉토리로 구분하여 코드를 작성하는 방법 모듈을 만들어 보겠습니다. %%writefile ai_school.py data = 'python' def echo(msg) : print('ai school : ', msg) 위의 모듈을 생성하고 나서 import ai_school # import 모듈명 ;을 입력해 모듈을 불러올 수 있습니다. 아래의 코드는 colab의 지원하는 기능이고 파일을 생성할 수 있게 기능을 가지고 있습니다. %..
이번에는 입출력에 대해서 알아보겠습니다. 간단하게 정리하자면 이 2가지에 대해서 정리하려고 합니다. 1. 램 → 하드 2. 하드 → 램 램과 하드 사이의 입출력 속도를 향상 시키려면 pickle이라는 패키지를 사용해야 합니다. pickle 패키지를 이용해 입출력하면 직렬화 자동화를 통해 입출력 속도가 빨라진다는 장점이 있습니다. 우선, 램에서 하드로 저장하는 예를 들어 보겠습니다. class Msg: def __init__(self, data): self.data = data msg = Msg('AI School') msg.data # 결과 # 'AI School' 어떤 값을 저장하는 클래스를 생성에 문자열을 하나 넣어보겠습니다. 현재, 이 문자열은 RAM에 저장되어 있습니다. 따라서, 이번에는 파일 형..
안녕하세요. 이번 포스트는 저번 포스트에 이어서 클래스에 대해 더 알아보려고 합니다. 우선, 프로퍼티에 대해서 복습하려고 합니다. getter 와 setter 이 두 가지 메서드가 있는데요. getter 값을 가져오는 메서드 setter 값을 저장하는 메서드 파이썬에서는 @property 라는 데코레이터를 사용해 구현할 수 있습니다. @property @메서드이름.setter 이제 예시를 들어서 확인해 보겠습니다. 비밀번호를 입력하고 수정하는 class를 getter와 setter 메서드로 표현해 보겠습니다. class Person: def __init__(self, pw): self.hidden_pw = pw #getter @property def pw(self): print('getter') retu..
안녕하세요! 이번 포스트에서는 파이썬 강의 4일 차에 공부한 class에 대해서 복습하려고 합니다. 간단하게 클래스는 변수와 함수를 묶어서 코드를 작성하는 방법 합니다. 그리고 객체지향을 구현하는 문법이기도 합니다. 여기서 객체지향 이란 실제세계를 모델링하여 프로그램을 개발하는 개발 방법론입니다. 또한 협업을 용이하게 한다는 장접도 있습니다. 클래스 사용업은 저번 포스트에서 공부했던 함수 사용법과 유사합니다. 기존 함수 사용법은 : 함수선언(코드작성) > 함수호출(코드실행) 그러고 클래스 사용법은 : 클래스선언(코드작성) > 객체생성(메모리 사용) > 메서드실행(코드실행)과 같은 방식으로 진행됩니다. 여기서 메서드라는 단어는 쉽게 이렇게 생각하면 됩니다. 클래스 안에 있는 함수 메서드 클래스 바깥에 있는..
이번 포스트에서는 함수에 대해서 복습해보려고 합니다. 본격적으로 함수 내용 들어가기 전에 저번 수업 시간에 배웠던 반복문과 조건문을 가지고 로또 번호 생성기 프로그램을 만들어 보도록 하겠습니다. 로또 번호 생성기 1. 1 ~ 45의 랜덤한 숫자 6개 출력 2. 숫자 6개 중에 중복 데이터가 없어야 함 import random # 1. 로또번호 저장 변수 생성 lotto = [] # 2. 아래의 코드 반복 : while while True: # 2-1. 1 ~ 45 랜덤한 숫자 출력 후 저장 : random_number : random.randint() random_number = random.randint(1, 45) # 2-2. lotto 리스트에 random_number 없으면, random_numb..
이번 포스트는 조건문과 반복문에 대해서 알아보려고 합니다. 조건문 조건문은 특정 조건에 따라서 코드를 실행합니다. 조건문으로 자기가 가진 돈에 따라서 이용해야 하는 대중교통을 출력하는 프로그램을 만들어 보겠습니다. my_money = int(input("가진 돈을 입력하세요")) if my_money >= 5000: print("택시 타야지~") elif my_money >= 2000: print("버스 탈 수 있다") else: print("걸어가야지..") print('END') 4000원을 입력했을때 5000원보다 크지 않으므로 택시에는 해당 사항이 없습니다. 하지만 2000원보다는 크거나 같으므로 버스는 타고 살 수 있습니다. 이렇게 조건문 앞선 조건에 True 인지 False인지 확인하고 Tru..