All Posts

[Pandas] 데이터 연결(concatenate) 및 결합(merge), 그리고 간단 결합(join)
·
Data Science/Pandas
데이터 연결 concat(참고링크)를 이용한다. 이 경우 단순히 데이터프레임을 연결하는 것이다. 이때 여러 매개변수를 이용할 수 있다.objs는 연결할 데이터프레임 혹은 시리즈의 리스트나 딕셔너리를 입력받는다.axis는 연결할 축을 설정한다. 기본은 0으로 세로로 연결하는데, 1로 설정하면 가로로 연결한다.join은 연결할 때의 방식을 설정한다. 기본은 "outer"로 설정되어 있는데, 이 경우 모든 인덱스 혹은 열을 합쳐서 연결한다. 만약 "inner"로 설정하면 교집합만 연결한다.ignore_index는 연결 후 새로운 인덱스 부여 여부를 결정한다. 기본적으로 False로 되어 있어 인덱스가 바뀌지 않지만, True로 설정하면 인덱스를 새롭게 설정한다.verify_integrity는 연결하려는 각 데..
[Pandas] 값 혹은 인덱스를 기준으로 데이터프레임 정렬
·
Data Science/Pandas
값을 기준으로 데이터프레임 정렬 • sort_values 메소드sort_values(참고링크)를 이용하여 데이터프레임의 값을 기준으로 정렬할 수 있다. 기본적으로 sort_values는 정렬한 리스트를 반환한다.예시로는 seaborn의 mpg 데이터셋을 이용하겠다.import seaborn as snsimport pandas as pddf = sns.load_dataset("mpg")mpg 데이터셋을 head로 불러와 확인해보면 아래와 같이 생겼다. mpg cylinders displacement horsepower weight acceleration \0 18.0 8 307.0 130.0 3504 12.0 1 15.0..
[Pandas] 판다스를 통한 데이터 시각화(data visualization)
·
Data Science/Pandas
데이터 시각화 데이터를 확인할 때 데이터 그 자체로 보면 데이터의 특징을 파악하기 어렵다. 따라서 다양한 방법으로 데이터를 요약하거나 시각화하여 데이터의 특징을 파악하기도 한다.데이터를 파이썬으로 시각화할 때는 seaborn, matplotlib 등의 라이브러리를 사용하는데, 판다스에서도 간단하게는 시각화할 수 있기 때문에 간단하게 데이터의 특징을 파악할 때는 판다스의 메소드를 활용하는 편이 좋을 수 있다.데이터를 시각화할 때는 수치형 데이터와 범주형 데이터를 다르게 시각화하는 것이 일반적이다. 또한 시각화 메소드 또한 수치형 데이터냐, 범주형 데이터냐에 따라 다르게 동작하기 때문에 수치형 데이터를 시각화하는 메소드를 범주형 데이터에 사용하면 당연히 오류가 나기 때문에 미리 데이터의 정보를 파악(참고 링..
[Pandas] 데이터프레임 기초 통계량 확인
·
Data Science/Pandas
기초 통계량 어떤 데이터가 가지고 있는 성질을 확인하려면 기초 통계량을 확인해야 할 것이다. 이러한 통계량으로는 평균, 중앙값, 분산, 최대값, 최소값, 빈도수 등이 있을 것이다.일단 예시를 위해 임의로 데이터를 불러오자.import seaborn as snsimport pandas as pddf = sns.load_dataset("iris")seaborn의 iris 데이터셋을 불러왔다.iris 데이터셋에는 sepal_length, sepal_width, petal_length, petal_width, species 열이 있는데, 이 중 species 열만 범주형이다. 범주형이 아닌 수치형 자료는 평균, 중앙값 등을 가지는데, 범주형 자료는 빈도수, 종류 등의 통계량을 가진다.기본적으로 통계량은 desc..
[Pandas] 데이터 정보 확인과 미리보기 및 결측치 확인과 처리
·
Data Science/Pandas
데이터 미리보기 판다스에서 불러온, 혹은 만든 데이터를 간단히 확인할 필요가 있을 때 다양한 메소드를 활용한다.일단 예시를 위해서 데이터를 불러와본다.import seaborn as snsimport pandas as pddf = sns.load_dataset('iris')seaborn의 iris 데이터셋을 불러왔다.먼저 행과 열의 수를 확인해보려면 shape을 확인하면 된다.df.shape출력은 다음과 같다.(150, 5)행과 열 수를 확인하고 데이터 자체를 미리보려면 head, tail, sample을 사용한다.head(참고링크)는 위쪽 데이터를 불러와 보여준다.df.head(5)출력은 다음과 같다. sepal_length sepal_width petal_length petal_width s..
[Pandas] 판다스 csv, 엑셀(xlsx, xls) 불러오기 및 저장하기
·
Data Science/Pandas
CSV 불러오기 기본적으로 read_csv(참고링크)를 통해 csv 파일을 불러온다. 가장 간단하게는 파일 이름으로 불러올 수 있다.df = pd.read_csv("filename.csv")이때는 이 코드와 csv 파일이 같은 폴더 안에 있어야 한다. 만약 다른 폴더에 있는 파일을 사용하고자 한다면, 경로가 포함된 파일 이름을 넣어야 한다. 예를 들어 csv 파일이 다운로드 폴더에 있다고 한다면 다음과 같이 불러올 수 있다.df = pd.read_csv("C:\\Users\\UsersName\\Downloads\\filename.csv")주의할 것은 경로 복사로 붙여넣으면 C:\Users\...로 되어 있을 수 있는데, \ 가 아니라 \\로 설정해주거나 / 를 사용해주어야 한다.주로 사용하는 매개변수는 ..
[Pandas] 판다스 소개 및 시리즈(series)와 데이터프레임(dataframe)
·
Data Science/Pandas
판다스 (Pandas) 판다스(공식 홈페이지)는 판다와 관련이 없다. 판다스는 패널(panel) 데이터(data)를 다루는 라이브러리라 Pan(panel)da(data)s 이다. R이 이러한 방식의 데이터를 주로 다루는데, 판다스는 파이썬에서 R과 같이 데이터를 다룰 수 있도록 도와주는 라이브러리라 생각하면 된다. 데이터사이언스와 데이터분석의 기본적으로 사용되는 라이브러리이며, 다양한 포맷의 데이터를 불러와 처리하는데, csv, Excel, SQL 데이터베이스 등 데이터를 처리할 수 있다.import pandas as pd판다스는 기본적으로 pd로 바꿔 불러오는 것이 관례이다.간단한 판다스 관련된 여러 함수와 메소드를 간략하게 정리한 이 pdf를 참고하면 좋다. 시리즈 (Series) 1차원 배열과 유사..
[NumPy] 넘파이 소개 및 배열(ndarray) 만들기
·
Data Science/NumPy
넘파이 (NumPy) 넘파이(공식 홈페이지)는 파이썬에서 수치 계산을 도와주는 라이브러리로 파이썬에서 기본적으로 사용되는 리스트와 달리 모든 원소가 같은 자료형이고 크기를 바꿀 수 없는 배열을 활용할 수 있게 해준다.넘파이의 다차원 배열 객체를 통해 벡터, 행렬, 텐서 등을 효율적으로 계산하도록 하며, 덕분에 여러 수학, 통계, 데이터 분석, 기계 학습 등 다양한 라이브러리와 연동된다.내부 코드가 C로 구현되어 있어 파이썬 자체 계산보다 더욱 빠른 연산을 보여준다.import numpy as np넘파이는 기본적으로 np로 바꿔 불러오는 것이 관례이다.  넘파이 배열 (ndarray) 넘파이의 array 함수에 리스트를 넣으면 ndarray 클래스의 객체로 변환하여 사용할 수 있다. 앞서 언급했듯이 단일 ..
[ C++] 예외 처리(exception handling)
·
Language/C & C++
오류 오류에는 다양한 종류가 있다. 컴파일 과정에서 문법에 맞지 않아 오류가 발생할 수도 있고, 코드 작성 과정에서 개발자의 실수로 개발자의 의도와 다르게 작동하는 오류도 있다. 혹은 논리적 오류로 인해 개발자가 예상한 범위에서는 정상적으로 작동하지만 특정 상황에서 오류가 발생하는 경우도 있다.컴파일 오류나 개발자의 의도와 다르게 작동하는 오류의 경우는 따로 수정이 필요하지만, 개발자가 예상한 범위에서는 정상 작동하는 코드의 경우 개발자가 의도한 범위 안에서만 동작하도록 하고 그 외 부분은 예외처리하여 코드를 사용할 수도 있다.예를 들어 거듭제곱을 계산하는 power라는 함수를 만들었다고 해보자. 근데 이 거듭제곱을 계산하는 함수는 정수에 대한 양의 정수 제곱밖에 계산하지 못한다면 실수의 거듭제곱 혹은 ..
[C++] 파일 입출력 스트림(file I/O stream) 및 파일 포인터(file pointer)
·
Language/C & C++
파일 종류 파일은 텍스트 파일과 바이너리 파일로 나뉜다. 텍스트 파일은 문자 데이터로 구성된 파일로, 사람들이 사용하는 글자 혹은 문자들만 포함된다. 각 문자는 ASCII 코드나 유니코드로 저장되며, 일반적으로 텍스트 편집기를 사용해 읽고 수정할 수 있고, 대표적인 예로 txt 파일이 있다. 반면, 바이너리 파일은 텍스트로 표현되지 않는 바이너리 데이터를 포함하며, 특정 프로그램만이 이 데이터를 해석할 수 있고, 이미지, 오디오, 실행 파일 등이 바이너리 파일의 대표적 예이다. 바이너리 파일은 각 바이트의 의미가 응용 프로그램에 의해 정의된다.참고로 어느 파일이든 파일의 끝을 읽으면 EOF, 즉 -1을 반환한다. 파일 입출력 스트림 (File I/O Stream) 파일 입출력 스트림은 파일을 프로그램과 ..
애스터로이드
'분류 전체보기' 카테고리의 글 목록