일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 오늘도코드잇
- 결정트리
- 코딩공부
- 선형회귀
- 행렬
- 머신러닝
- 윈도우함수
- 서브쿼리
- matplotlib
- 코드잇 TIL
- 로지스틱회귀
- 경사하강법
- 판다스
- Seaborn
- 코딩
- 다항회귀
- 데이터분석
- for반복문
- SQL
- sql연습문제
- numpy
- pandas
- 코드잇
- 코딩독학
- HTML
- 나혼자코딩
- 메소드
- 코드잇TIL
- CSS
- 파이썬
- Today
- Total
목록파이썬 (45)
Coding Diary.
지난 글에 이어서 간단한 예시로 텍스트 데이터를 정제해보겠습니다. (데이터분석) 파이썬으로 텍스트 데이터 정제 함수 만들기1. 텍스트 데이터 정제 함수 만들기import nltkfrom nltk.tokenize import word_tokenizefrom collections import Counterfrom text import TEXTnltk.download('punkt')corpus = TEXTtokenized_words = word_tokenized(corpus)#등장 빈도 기준 정제 함life-of-nomad.tistory.com import pandas as pdtxt_data = pd.read_csv('text_data.csv') 1. Nomalize data 정규화txt_data.head(..
데이터 품질을 점검할 때는 일반적으로 완전성 문제를 먼저 처리하는 것이 좋습니다. 그러면 이후에 누락 데이터로 인한 정제 과정을 반복할 필요가 없기 때문입니다. * 결측 데이터 및 데이터 정돈 문제문제 1) 하나의 열에 여러 개의 변수 존재문자열 처리 및 unpivoting을 통해 해결합니다.(step 1) 결측 데이터 처리하기 (Clean Missing Data)#데이터 불러오기import pandas as pdimport numpy as nppatients = pd.read_csv('patients.csv')treatments = pd.read_csv('treatment.csv')adverse_reactions = pd.read_csv('adverse_reaction.csv')#결측값 존재 확인 및..
웹사이트에서 데이터에 액세스하기 어려울때, 코드를 사용하는 웹 스크래핑을 통해서 데이터를 추출해보겠습니다. 웹사이트 데이터는 태그를 사용해 페이지의 구조를 지정하는 하이퍼텍스트 마크업 언어(HyperText Markup Language, HTML)로 작성됩니다. 구문 분석기를 사용하여 액세스할 수 있습니다. BeautifulSoup를 사용하면 더욱 편리합니다.* BeautifulSoup : 파이썬 언어로 작성된 HTML 구문 분석기 1) BeautifulSoup 라이브러리 불러오기 2) language_of_flowers.html 을 fp라는 파일 객체로 열기3) Beautiful 생성자에 전달하고 그 결과를 flower_soup 변수에 할당하기 4) flower_soup 결과 확인하기 5) prett..
이 글에서는 지난 글에서 저장한 폴더 안에 있는 영화 평론 텍스트파일을 읽어보겠습니다 파이썬의 glob라이브러리를 사용해서 각 파일을 한 줄씩 읽어들여서 파일의 제목, URL, 본문을 추출하고 Pandas DataFrame에 저장해보겠습니다. (데이터분석) 파이썬의 requests 라이브러리 이용하여 파일 다운로드하기requests 라이브러리로 파일 다운로드하기1) requrests 와 os 불러오기 2) 다운로드한 파일을 저장할 디렉터리 만들기os.path.exist : 파일 경로가 존재하는지 확인if not : 존재하지 않을 때만 디렉터리 만life-of-nomad.tistory.com 지난 글에서 저장한 디렉터리를 먼저 보겠습니다.각 txt 파일을 더블 클릭해서 열어보면 아래와 같습니다.첫번째 줄..
requests 라이브러리로 파일 다운로드하기1) requrests 와 os 불러오기 2) 다운로드한 파일을 저장할 디렉터리 만들기os.path.exist : 파일 경로가 존재하는지 확인if not : 존재하지 않을 때만 디렉터리 만들기 3) url 리스트 만들기 4) requestsrequests.get(url)로 HTTP GET 요청 생성하기raise_for_statur 함수 : GET 요청에 오류가 발생했을 때 예외가 발생하도록 설정하기os.path.join : 콘텐츠를 다운로드할 파일 경로 구성하기 (folder_name과 url결합해서 이름으로 지정 위의 예시에서는 /로 구분된 것중 끝에서 첫번째 요소니깐 ebert_review_2017/1-the-wizard-of-oz-1939-film.tx..
zipfile 이용하기zipfile.ZipFile을 통해 ZipFile 클래스에 엑세스해서 zipfile 라이브러리로부터 zip파일을 읽고 쓸 수 있게 합니다."r"을 지정하여 tiny_csv_zip이라는 이름의 zip파일을 읽기모드에서 열고 zip_ref라는 파일 객체를 생성합니다.extractall 함수를 사용해서 zip파일 내의 모든 파일을 tiny_csv라는 이름의 새 폴더로 추출합니다.pandas 이용해서 tiny_csv폴더에서 csv파일을 읽어서 DataFrame 으로 반환합니다.문제점pandas가 세미콜론(;)을 제대로 처리하지 못합니다. (pandas는 기본적으로 쉼표로 값을 구분하기 때문)테스트 결과가 없는 것이 존재합니다. No Test Taken => 누락값은 NA로 나타내는게 적합합..
1. 최댓값, 최솟값 max 메소드와 min 메소드를 사용하면 numpy array의 최댓값과 최솟값을 구할 수 있습니다. import numpy as np array1 = np.array([14, 6, 13, 21, 23, 31, 9, 5]) print(array1.max()) #최댓값 print(array1.min()) # 최솟값 31 5 2. 평균값 mean 메소드를 사용하면 numpy array의 평균값을 구할 수 있습니다. import numpy as np array1 = np.array([14, 6, 13, 21, 23, 31, 9, 5]) print(array1.mean()) #평균값 15.25 위 예시에서 총 합(14+6+13+21+23+31+9+5)을 총 개수(8)로 나누면 15.25 입..
파이썬에서 좋은 코드를 만들기 위한 가이드 중 PEP8에 대해 알아보겠습니다. 1. 이름1) 이름 규칙모든 변수와 함수 이름은 소문자로 쓰고 여러 단어일 경우 _로 나눕니다.# badsomeVariableName = 1SomeVariableName = 1def someFunctionName(): print("Hello")# goodsome_variable_name = 1def some_function_name(): print("Hello")모든 상수의 이름은 대문자로 쓰고 여러 단어일 경우 _로 나눕니다.# badsomeConstant = 3.14SomeConstant = 3.14some_constant = 3.14# goodSOME_CONSTANT = 3.142) 의미 있는 이름# bad (..
자주 쓰이는 표현을 더 간략하게 쓸 수 있게 해주는 문법을 'syntactic sugar'라고 합니다.다음 아래의 두 줄은 같습니다.x = x+1x += 1x = x+2x += 2x = x*2x *= 2x = x-3x -= 3x = x/2x /= 2x = x%7x %= 7
파라미터에게 '기본값(default value)'을 설정할 수 있습니다.기본값을 설정해두면, 함수를 호출할 때 파라미터에 값을 안 넘겨줘도 됩니다.이러한 파라미터를 '옵셔널 파라미터(optional parameter)'라고 합니다. 아래의 코드를 보면 myself 함수를 호출할 때 한 번은 파라미터 nationality 에 들어갈 값을 제공했고, 한 번은 제공하지 않았습니다. def myself(name, age, nationality="한국"): print("내 이름은 {}".format(name)) print("내 나이는 {}살".format(age)) print("국적은 {}".format(nationality))print(myself("박보검", 1, "미국")) #옵셔널 파라미..