일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 머신러닝
- numpy
- matplotlib
- 로지스틱회귀
- 결정트리
- 영국석사
- 코딩공부
- 코드잇 TIL
- 행렬
- 코딩독학
- HTML
- 윈도우함수
- 판다스
- 데이터분석
- sql연습문제
- 런던
- 오늘도코드잇
- 선형회귀
- 다항회귀
- 유학생
- 파이썬
- 나혼자코딩
- Seaborn
- 코드잇TIL
- 코드잇
- SQL
- CSS
- 경사하강법
- for반복문
- 코딩
- Today
- Total
목록코딩공부/Data analysis (39)
영국 척척석사 유학생 일기장👩🏻🎓
이 글에서는 지난 글에서 저장한 폴더 안에 있는 영화 평론 텍스트파일을 읽어보겠습니다 파이썬의 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) Q1, Q3 구하기 데이터의 50% 지점을 의미하는 것이 중간값입니다. 이를 이용하면 Q1(데이터의 25%지점), Q3(데이터의 75%지점) 을 구할 수 있습니다. 예를 들어, 아래의 데이터에서 중간값은 86 입니다. 32, 48, 56, 78, 86, 96, 100, 120, 156 이 데이터를 중간값을 기준으로 둘로 나누었을 때, 첫번째 값부터 중간 값까지, 중간 값부터 마지막 값까지 둘로 나누었을 때, 왼쪽 묶음에서 의 중간값인 56이 25%에 해당하는 Q1값이라고 볼 수 있습니다. 반대로 오른쪽 묶음에 있는 중간값 100은 75% 지점, 즉 Q3이 됩니다. 하지만, 아래와 같이 Q1, Q2, Q3의 위치를 딱 정할 수 없는 경우도 있습니다. 데이터의 개수가 짝수일 때 중간값(Q2)를 구하려면..
이름으로 인덱싱하기 기본 형태 단축 형태 하나의 row 이름 df.loc["row4"] row 이름의 리스트 df.loc[["row4", "row5", "row3"]] row 이름의 리스트 슬라이싱 df.loc["row2":"row5"] df.["row2":"row5"] 하나의 column 이름 df.loc[:, "col1"] df["col1"] column 이름의 리스트 df.loc[:, ["col4", "col6", "col3"] df[["col4", "col6", "col3"]] column 이름의 리스트 슬라이싱 df.loc[:, "col2":"col5"] 위치로 인덱싱하기 기본 형태 단축 형태 하나의 row 위치 df.iloc[8] row 위치의 리스트 df.iloc[[4, 5, 3]] row ..
pandas DataFrame에는 다양한 종류의 데이터를 담을 수 있습니다. dtypes를 사용해서 각 column이 어떤 데이터 타입을 보관하는지 확인할 수 있습니다. import pandas as pd two_dimensional_list = [['dongwook', 50, 86], ['sineui', 89, 31], ['ikjoong', 68, 91], ['yoonsoo', 88, 75]] my_df = pd.DataFrame(two_dimensional_list, columns=['name', 'english_score', 'math_score'], index=['a','b','c', 'd']) print(my_df.dtypes) name object english_score int64 math_..
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 입..
1. numpy array를 만드는 방법 1) 파이썬 리스트를 통해 생성 numpy 모듈의 array 메소드에 따라 파라미터로 파이썬 리스트를 넘겨주면 numpy array가 리턴됩니다. array1 = numpy.array([2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31]) print(array1) [2 3 4 7 11 13 17 19 23 29 31] 2) 균일한 값으로 생성 numpy 모듈의 full 메소드를 사용하면, 모든 값이 같은 nupmy array를 생성할 수 있습니다. array1 = numpy.full(6, 7) print(array1) [7 7 7 7 7 7] (1) 모든 값이 0인 numpy array 생성 모든 값이 0인 numpy array를 생성하기 위해..
데이터 사이언스의 단계 1. 문제 정의하기 2. 데이터 모으기 3. 데이터 다듬기 4. 데이터 분석하기 5. 데이터 시각화 및 커뮤니케이션 1) 문제 정의하기 해결하고자 하는 문제를 정의합니다. 이 단계에서는 해결하고자 하는 게 무엇인지, 언제까지 어떤 결과물을 얻을 것인지, 어떤 방식으로 데이터를 활용할 것인지 등을 설정합니다. => 목표 설정/ 기간 설정/ 평가 방법 설정/ 필요한 데이터 설정 2) 데이터 모으기 필요한 데이터를 모을 수 있는 방법을 찾습니다. 누군가 이미 모아 놓은 데이터를 그대로 사용할 수도 있고, 공공 기관 등에서 배포한 자료를 찾아 볼 수도 있고, 혹은 웹사이트에서 직접 데이터를 수집할 수도 있습니다. => 웹 크롤링/ 자료 모으기/ 파일 읽고 쓰기 3) 데이터 다듬기 데이터의..