본문 바로가기

Data_Analysis/Numpy, Pandas15

[Pandas] 파일 불러오기 - Encoding python으로 데이터를 다룰 때 주로 외부에 저장된 csv, text, excel 등 형태의 파일을 불러와서 사용합니다. 이때, 파일을 불러오는 방법을 2가지 정도 소개하고자 합니다. 한글이 포함된 파일을 불러올 때 필요한 인코딩 방법 위주로 작성했습니다. 1. pandas.read_csv() - 기본적으로 read_~~메서드는 "경로/파일명.확장자"만 포함해서 파일을 불러올 수 있다. - encoding이 필요한 경우 encoding="utf-8" 옵션을 추가한다. import pandas as pd # csv형태의 ratings 파일 불러오기. "경로/파일명.확장자" data=pd.read_csv("C:/ratings.csv",encoding="utf-8") 다음은 엑셀 파일을 불러온 것이다. - .. 2020. 12. 17.
[Pandas] Profiling [pandas profiling] 데이터 분석을 시작하기 전에 컬러 종류, 데이터의 개수, 컬럼별 통계정보, 결측값 등을 확인합니다. pandas profiling은 이 과정에서 용이한 라이브러리 입니다. 코드를 개별적으로 입력하지 않아도 기본적인 데이터 정보를 집계, 시각화해서 보여줍니다. 아래에서 캐글 데이터를 예시로 살펴보겠습니다. 1) 라이브러리와 파일을 준비 캐글에서 신용카드 불량거래 데이터 csv파일을 이용합니다. 저는 캐글 노트북에서 바로 코드를 작성했는데, 본인 주피터 노트북에서 작성하실 때는 캐글에서 데이터를 내려받고 read_csv("파일경로와 파일명")을 바꿔줍니다. # 라이브러리 준비 import numpy as np import pandas as pd import pandas_pr.. 2020. 10. 8.
[Pandas] DataFrame 함수 (where()) [데이터 조회] 1) 인덱싱/슬라이싱으로 조건 생성 # df2의 "London"컬럼의 값 중에서 45보다 큰 값 가져오기 df2[df2["London"]>45][["London"]] ''' London Beth 58.0 Camila 76.0 ''' # df2의 "London"컬럼 값이 45보다 큰 행 가져오기 df2[df2["London"]>45] ''' NewYork London Paris Rome Beth 89.0 58.0 20.0 62.0 Camila 63.0 76.0 24.0 44.0 ''' 2) np.where : 조건에 따라 데이터를 조회 및 변경 # numpy의 함수 where()을 사용하여 조건주기 # import numpy as np # np.where(조건문,참일 경우, 거짓일 경우) .. 2020. 7. 22.
[Pandas] 그룹연산(groupby, pivot_table) [그룹 연산] 1) groupby 2) pivot 1) groupby : 데이터를 그룹핑하여 객체로 반환. 단독으로 쓰이지 않고, 통계 함수와 함께 사용 - 데이터셋 생성 import numpy as np import pandas as pd from pandas import Series,DataFrame import matplotlib.pyplot as plt # 데이터셋 생성 np.random.seed(100) df1=DataFrame({ "Gender":["Female","male","Female","male","Female","male","Female","Female"], "Smoking":["Smoker","Smoker","Smoker","Non-Smoker","Non-Smoker","Non-Sm.. 2020. 7. 21.
[Pandas] Concat, Merge [DataFrame을 합치기] 1) concat 2) merge 1) concat - 단순히 하나의 DataFrame에 다른 DataFrame을 연속적으로 붙이는 방법 이 경우, 2개의 DataFrame의 인덱스와 컬럼이 서로 동일한 경우가 대부분 - 기본이 위,아래로 연결. axis 수정하여 좌우 연결 가능. - outer 조인을 기본 방식으로 한다. - key를 이용한 concat이 가능하다 - 데이터셋 생성 df1=DataFrame({ 'A':['A0','A1','A2','A3'], "B":['B0','B1','B2','B3'], "C":['C0','C1','C2','C3'], "D":['D0','D1','D2','D3'] }) df2=DataFrame({ 'A':['A4','A5','A6','A7.. 2020. 7. 21.
[Pandas] 결측치 처리 [Pandas 결측치 처리] - Pandas는 누락 데이터를 NaN으로 처리한다. - NaN값은 데이터 연산에서 문제가 되므로 삭제하거나, 적절한 다른 값으로 변경할 필요가 있음. 1) 결측치 조회 - isnull(), notnull() 2) 결측치 삭제 - dropna() 3) 결측치 대체 - fillna() 1) 결측치 조회 1-1) isna(), isnull() : NaN값 조회 import pandas as pd import numpy as np from numpy import nan as na # 임의의 데이터프레인 생성 df=pd.DataFrame([[1,6.5,3],[1,na,na],[na,na,na],[na,6.5,3]]) df # 값이 NaN이면 True, 아니면 False로 나타남 df.. 2020. 7. 21.
[Pandas] DataFrame 함수 (컬럼명 변경, 컬럼 추가/삭제/정렬) [DataFrame 관련 함수] 1) 컬럼명 변경 - columns, rename 2) 컬럼추가 3) 삭제 - drop(), del 4) 정렬 - sort_values(), sort_index() 1) 컬럼명 변경 data2={'name':["James","Beth","Camila","Elsa"], 'adderss':["NY1","NY1","NY2","NY1"], 'age':[12,45,23,16] } # 원래 컬럼명 : ["NY1","NY1","NY2","NY1"] df2=DataFrame(np.random.randint(10,100,16).reshape(4,4),index=data2['name'],columns=data2['adderss']) df2 1-1) columns : 전체 컬럼의 이름을 변경.. 2020. 7. 21.