본문 바로가기

국비 교육/데이터26

[데이터 분석] Pandas 문제 실습 - 4 서울시 공공자전거 대여소 정보 분석 대여소 정보 데이터 읽기import pandas as pdplace_df= pd.read_excel('서울특별시 공공자전거 대여소 정보(19.12.9).xlsx', skiprows= 0, engine='openpyxl')place_df.head()NA 값이 몇 개인지 확인하기import numpy as np place_df.isna().sum()place_df.shapeisna().sum() 을 통해 na값이 존재 한다는 것을 알게 되었다.place_df[place_df['대여소ID'].isna()] # 불린인덱싱 통해불린 인덱싱을 이용하여 해당 컬럼이 어디에 존재해 있는지 확인한 결과 가장 마지막 행에 합계로 들어가 있었다.place_df = place_df.drop(1540)# place_df.dro.. 2023. 11. 16.
[데이터 분석] Pandas 문제 실습 - 3 품목별 수출입실적 분석 엑셀을 읽기 위해서는 따로 다운 받을 패키지가 존재한다."!pip install openpyxl 데이터 읽어오기import pandas as pddf = pd.read_excel('import_export.xls', skiprows= [0,1,2,3], engine='openpyxl')df.head()skiprow() 의 이유: 표를 만들기 위해 사용된 행 서식을 제거불필요한 행 삭제 및 인덱스 초기화0 , 485 행 : '총계', '설명' 에 해당하는 row 삭제df = df.drop(0) # 0행만# df.drop(len(df), inplace= True) # 마지막행import numpy as npdf.index = np.arange(485)df.head()# df = df.reset_index(d.. 2023. 11. 16.
[데이터 분석] Pandas 문제 실습 - 2 국가별 알콜 섭취량 데이터 분석 데이터 분석에 필요한 패키지 다운import pandas as pdimport numpy as nppd.set_option('display.max_columns',None) # 출력셀에 표시될 수를 지정 # 출력 셀에 모든 열 출력pd.set_option('display.max_rows',None) # 출력셀에 표시될 수를 지정 # 출력 셀에 모든 행 출력0-1.데이터 읽어오기df = pd.read_csv('drinks.csv',na_filter=False)data = pd.read_csv('drinks.csv')교수님의 코드와 내 코드가 섞여 있을 예정. 내가 읽은 데이터는 df로, 교수님의 예시를 data로 구분 컬럼명 한글로 변경data.columns = ['국가','맥주','증류주','와인','알.. 2023. 11. 16.
[데이터 분석] Pandas 실습 문제 - 1 (시애틀 강수량 데이터 분석) 데이터 로딩import pandas as pdimport numpy as np필요한 패키지 로딩df = pd.read_csv('Seattle2014.csv')pd.read_* 을 통해 csv 파일을 읽어온다.1-1. 데이터 모양 및 정보 확인df.shape(365,17) # 365행 17열로 구성되어 있다.(1년간의 시애틀 분석이므로 365행이다.)df.head()df.info()df.isna().sum()결측치 행이 존재하는지 확인한다. isna() 는 논리형의 값으로 나오므로 sum() 을 하여 True 의 값을 합한다. 필요하지 않은 컬럼 삭제 (STATION, STATION_NAME)df.drop(['STATION','STATION_NAME'],axis=1,inplace=True) # axis=1.. 2023. 11. 15.
[데이터 분석] Padas - 4 그룹핑특정 값을 기준으로 몇 개의 그룹으로 분할하여 처리하는 방식df = pd.DataFrame({'A': ['chol','young']*3 +['chol'], 'B': [ 'one','one','two','one','two', 'two','one'], 'C': np.random.randn(7), 'D': np.random.randn(7)})df새로운 데이터프레임 생성 grouped = df.groupby('B')print(grouped) for key,group in grouped: print('key:',key) print(group.head()) print('-'*30) 그룹 객체 만들기.. 2023. 11. 11.
[데이터 분석] Pandas - 3 df = pd.DataFrame([[1,2],[3,4]], index= ['A','B'], columns= ['a','b'])df새로운 데이터 프레임 생성(인덱스가  A,B , 컬럼명이 a,b 인 1행이 1,2, 2행이 3,4 로 채워진 2행 2열의 데이터 프레임) 데이터프레임 간의 조합pd.concat()두 개 이상의 데이터 프레임을 행 또는 열 방향으로 연결한다. 열 방향으로 연결하고자 할 경우 axis = 1 인자를 전달한다.(default: axis = 0) 행 방향으로 연결하고자 할 때는 열 이름이 같아야 하고, 열 방향으로 연결하고자 할 때는 행 이름이 같아야 하다.df2 = pd.concat([df,df])df2concat()의 축 기본값이 axis = 0 이기 때문에 열에 방향(아래쪽으로).. 2023. 11. 11.
[데이터 분석] Pandas - 2 예제로 쓰이는 데이터 프레임 원본이다.인덱싱, 슬라이싱# df['a'] 키 에러 (열읽기)df[['A','C']]'a'는 행에 있는 인덱스 이름이기 때문에 df['a']로 읽어올 수 없다.  = 열의 순서를 이용해서 인덱싱 할 수 없다.열 위치 값을 이용해서 인덱싱이나 슬라이싱을 이용하려면 columns 속성을 이용한다. # df[0] # 컬럼명으로 인식하게 됨df.columns # 컬럼의 값을 ndarray로 반환# Index(['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J'], dtype='object')df.columns[0] # 'A'# 위치값을 이용해서 컬럼 이름을 가져올 수 있다.df[df.columns[2:4]] # 데이터 프레임 형식으로 2번째, 3번.. 2023. 11. 11.
[데이터 분석] Pandas - 1 판다스 개요판다스는 데이터 조작 및 분석을 위해 파이썬 프로그래밍 언어로 작성된 소프트웨어 라이브러리이다. 일명 파이썬의 엑셀이라 부른다. URL : https://pandas.pydata.org pandas - Python Data Analysis Librarypandas pandas is a fast, powerful, flexible and easy to use open source data analysis and manipulation tool, built on top of the Python programming language. Install pandas now!pandas.pydata.org 판다스 불러오기판다스는 일반적으로 pd라는 별칭으로 불러온다.import pandas as pdimp.. 2023. 11. 11.
[데이터 분석] Numpy - 4 (실습문제) 총 21문제(기본기 체크용) 문제 6번을 통해 Boolean indexing에 대해 이해도를 높일 수 있었다. (** np.array) 문제 7번 - 단위 행렬과 정방 단위 행렬은 길이의 차이 인것 같다. 문제 10번 - 헷갈릴 수 있었던 axis 축 설정도 무리 없이 풀었다. 문제 21번 - np.random.randint 에는 복원추출에 대한 요소가 없다. 하지만, np.random.choice()를 활용하여 안에서 바로 범위를 잡고, 복원추출 유무도 설정 할 수 있다. ________________________________________________________________________________________________________________ [문제] BMI 지수 계산 및 .. 2023. 11. 8.