본문 바로가기
728x90

데이터분석과 AI81

7. 컬럼을 추가하고 삭제하기(drop) 이번에는 컬럼을 추가하고 삭제해보겠습니다. 엑셀에서는 단지 우클릭하고 열을 삽입해주면 되었습니다. python에서는 열의 이름을 정하고, 값을 넣어주면 열이 추가됩니다. 간단하게 tmp 열을 만들고 1 값을 넣어주었습니다. boston_price['tmp']=1 테스트 삼아 넣어본 열이니, 다시 삭제하겠습니다. 엑셀은 삽입할 때와 마찬가지로 삭제 위치에 우클릭하고 열을 삭제하면 됩니다. python에서는 drop 함수를 사용합니다. boston_price.drop('tmp',axis=1,inplace=True) DataFrame에 drop() 함수를 붙이고, 인자로 삭제할 컬럼명('tmp'), 삭제 방향(axis=1), DataFrame에 즉시 반영 여부(inplace=True)를 입력하면 됩니다. 이때.. 2022. 12. 1.
6. DataFrame에 필터 걸기(loc, iloc) 이제 본격적으로 Excel처럼 Python을 사용해 보겠습니다. 우리가 사용할 BostonHousing 데이터는 위와 같은 칼럼들을 가지고 있습니다. 여기서 주택 가격이 21.6인 데이터를 뽑는다고 하면 어떻게 할까요? Excel에서는 어떤 기능을 쓰지요? 네 바로 필터입니다. 값에 21.6 넣고 Enter키 누르면 바로 결과가 나옵니다. 그럼 Python은 어떻게 할까요? iloc, loc입니다. 공식문서 iloc: https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.iloc.html#pandas-dataframe-iloc loc: https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.l.. 2022. 9. 25.
Confusion Matrix(혼동 행렬)과 평가지표 이해하기 Confution Matrix란? 오늘 정리해 볼 것은 Confusion Matrix입니다. 시스템이 분류 문제를 얼마나 헷갈려하는지 알 수 있는 표라고 Confusion Matrix인데, 이 표를 보고 있는 사람도 혼동이 와서 혼동행렬이라는 우스갯소리가 있습니다. 분류 모델링의 성능을 나타내는 많은 평가 지표들이 Confusion Matrix에서 도출되기 때문에 중요합니다. 기본은 간단합니다 행방향으로는 예측에 대한 결과 열 방향으로는 실제 값을 표시하고, 경우에 따라 행/열이 바뀌는 경우도 있습니다. Actually Positive Actually Negative Predicted Positive True Positive(TP) False Positive(FP) Predicted Negative Fa.. 2022. 9. 23.
[앱테크] 디지털 인형 눈알 붙이기(Labeling) 부업하기 - 캐시미션 디지털 눈알 붙이기? 디지털 인형 눈알 붙이기라는 말을 들어보셨나요? 우리 어릴 때 어머니들은 조금이라도 살림에 보태려고, 인형 눈알 붙이기, 오징어 찢기, 상자 접기 등 한건에 몇 원씩 하는 부업을 하셨는데요. 요즘에는 데이터 라벨링(Data Labling)이라는 새로운 형태의 부업이 생겨나고 있습니다. 인공지능(AI)이 각광을 받고 활용분야가 넓어지면서, 인공지능 학습에 필요한 라벨링 작업이 필요하게 되었는데요. 간략히 언급하면, 인공지능 학습에는 지도 학습(Supervised Learning)과 비지도 학습(Unsupervised Learning)이 있는데, 지도학습이란 데이터의 특성에 따른 정답을 알려주고, 이를 학습하여 정답을 찾아내는 방법이고, 비지도 학습은 정답은 없지만, 데이터의 특성을 인.. 2022. 9. 22.
5. 데이터의 기본 개요 확인 방법 (info, describe) 데이터프레임은 엑셀에 없는 몇가지 편의 기능을 제공하는데요. 데이터에 대한 요약이나, 데이터의 기술통계(평균,합계 등 기본 통계라고 생각하시면 됩니다.)를 확인할 수 있는 함수가 있습니다. pandas.DataFrame.info info() 함수는 데이터프레임의 크기, 컬럼의 타입등을 보여줍니다. 전체 행/열 수를 확인하고, 각 컬럼과 비교하면 결측치(값이 없는 데이터)를 확인할 수 있고, 데이터 타입에 따라 어떻게 데이터를 수정할지 검토할 수 있습니다. boston_price.info() boston_price 데이터는 총 506개의 행과 14개의 컬럼을 가지고 있고, 결측치는 존재하지 않는 다는 것을 알수 있습니다. 그리고 모든 열이 수치형 데이터인 것을 알수 있습니다. pandas.DataFrame.. 2022. 9. 16.
4. EDA(Explorary Data Analytics) 탐색적 자료 분석이란? 위키백과에서 찾은 EDA의 정의는 아래와 같습니다. 탐색적 자료 분석(영어: Exploratory data analysis)은 존 튜키라는 미국의 저명한 통계학자가 창안한 자료 분석 방법론이다. 기존의 통계학이 정보의 추출에서 가설 검정 등에 치우쳐 자료가 가지고 있는 본연의 의미를 찾는데 어려움이 있어, 이를 보완하고자 주어진 자료만 가지고도 충분한 정보를 찾을 수 있도록 여러 가지 탐색적 자료 분석 방법을 개발하였다. 대표적인 예로 박스플롯을 들 수 있다. 탐색적 자료 분석을 통하여 자료에 대한 충분한 이해를 한 후에 모형 적합 등의 좀 더 정교한 모형을 개발할 수 있다. 뭔 말인가... 싶은데, 중요한 부분은 "자료에 대한 충분한 이해" 입니다. 초보 데이터분석가가 제일 많이 하는 실수가 이 EDA.. 2022. 9. 16.
3. 데이터 파일(xlsx, xls, csv) 읽고 쓰기 데이터 분석을 위해 우선 파일을 불러오는 것부터 시작하겠습니다. 자주 사용하는 xlsx, xls, csv 파일을 읽어 오겠습니다. .csv csv 파일은 pandas에서 기본으로 제공하는 read_csv 함수를 사용하면 되고, 괄호안에 읽고자하는 파일 경로를 입력합니다. 절대, 상대 경로가 모두 가능합니다. 아래 코드는 파일을 읽어서 data 데이터 프레임에 저장하고 있습니다. import pandas as pd boston_data=pd.read_csv('BostonHousing.csv') #파일 이름 # boston_data=pd.read_csv('data/BostonHousing.csv') # 파일 경로 (상대) # boston_data=pd.read_csv('c:/data/BostonHousing.. 2022. 9. 14.
2. Set_option 다루기 이제 본격적으로 Dataframe을 다루어야 하는데, 한 가지 맘에 걸립니다. 아래 총 rows가 506인데, 중간이 뚝 끊어지고,"..."으로 표시되고 있네요. 아래 데이터는 행이 끊어졌지만, 열수가 많아지면 열도 끊어집니다. DataFrame의 가려진 행과 열을 보이게 하려면 set_option 이라는 함수를 사용합니다. pd.set_option('display.max_rows',600) #행 수를 늘릴 때 pd.set_option('display.max_columns',600) #열 수를 늘릴 때 이 코드에서 두 번째 인자로 숫자를 넣으면 해당 숫자만큼의 행/열이 표시됩니다. 그리고, None을 넣으면 무제한으로 표시되고, 0을 넣으면 Default으로 돌아갑니다. 이렇게 0~505행까지 출력이 됩.. 2022. 9. 14.
Python에서 DataFrame의 목록을 출력하는 방법 데이터프레임을 계속 만들다 보면 한번 정리하고 싶을 때가 있습니다. 이럴 때 데이터프레임 목록을 출력하는 방법입니다. 두 개 함수를 사용합니다. dir() : 객체의 리스트를 출력합니다. 이때 출력되는 리스트는 객체 자체가 아니라 객체의 이름, 즉, 문자열입니다. eval() : 문자열을 코드로 인식하게 하는 함수입니다. 아래 코드에서는 dir()로 객체의 이름을 불러오고 for문을 돌면서 해당 이름을 사용하는 객체가 DataFrame이면 DataFrame의 이름과 타입을 출력하는 코드 입니다. for object in dir(): if type(eval(object))==pd.core.frame.DataFrame: print(object, type(eval(object))) 2022. 9. 13.
728x90