데이터 분석 및 시각화

데이터 분석 및 시각화/데이터 시각화

[Python] Matplotlib - 기초(style, 범례, label)

MatPlotlib이란 Matplotlib은 파이썬에서 자료를 차트(chart)나 플롯(plot, a graph showing the relation of two variables)으로 시각화 하는 패키지입니다. Matplotlib은 다음과 같은 정형화된 차트나 플롯 이외에도 저수준 API를 활용한 다양한 시각화 기능을 제공합니다. 라인 플롯(line plot) 스캐터 프롯(scatter plot) 컨투어 플롯(contour plot) 서피스 플롯(surface plot) 바 차트(bar chart) 히스토그램(histogram) 박스 플롯(box plot) matplotlib 및 matplotlib.pyplot 임포트하기 패키지에는 pyplot이라는 서브 패키지가 존재합니다. 이 pyplot 서브 패키..

데이터 분석 및 시각화/파이썬

[Python] 기초정리(Pandas(Merge, 시계열 자료, Groupby))

DataFrame 합성 Pandas는 두개 이상의 DataFrame을 하나로 합치는 데이터 병합(merge)이나 연결(concatenate)을 지원합니다. DataFrame merge() merge 함수는 두 데이터프레임의 공통 column 혹은 인덱스를 기준으로 두개의 테이블을 합친다. 이 때 기준이 되는 column, row의 데이터를 키(key)(PK)라고 합니다. df1 = pd.DataFrame({ '고객번호': [1001, 1002, 1003, 1004, 1005, 1006, 1007], '이름': ['둘리', '도우너', '또치', '길동', '희동', '마이콜', '영희'] }, columns=['고객번호', '이름']) df2 = pd.DataFrame({ '고객번호': [1001, 10..

데이터 분석 및 시각화/파이썬

[Python] 기초 정리(Pandas_DataFrame3)

DataFrame apply() 메서드 DataFrame에 대해 Function을 적용하고 싶다면 apply()함수를 활용하면 좋습니다. 이 메서드는 첫 인자로 함수를 필수값으로 받습니다. 경우에 따라 두번째 인자로 axis를 사용할 수 있습니다. axis 인자는 0이 default입니다. axis가 0 or 'index'인 경우 각 column에 대해 함수를 적용합니다. axis가 1 or 'columns'인 경우 각 row에 대해 함수를 적용합니다. 아래의 예제에서는 Numpy의 np.sort를 사용하여 적용해보았습니다. np.sqrt는 각 요소마다 적용되는 함수(universal function, ufunc)로 이 경우에는 np.sqrt(df)와 동일한 결과를 가져옵니다..

데이터 분석 및 시각화/파이썬

[Python] 기초 정리(Pandas_DataFrame2)

DataFrame 고급 인덱싱 DataFrame에서 특정한 데이터만 골라내는 것을 인덱싱이라고 합니다. 앞 절에서는 column에 대해 label, label list 인덱싱을, row에 대해 index(정수) 슬라이스 총 3가지 방식을 사용하여 데이터를 추출하는 방법을 살펴 봤습니다. 그런데 Pandas는 NumPy 배열과 같이 콤마(,)를 사용한 (row 인덱스, column 인덱스) 형식의 2차원 인덱싱을 지원하기 위해 다음과 같은 특별한 인덱서(indexer) 속성도 제공합니다. loc : label 값 기반의 2차원 인덱싱 iloc : 순서를 나타내는 정수 기반의 2차원 인덱싱 df.loc[row 인덱싱 값] df.loc[row 인덱싱 값, column 인덱싱 값]DataFrame 고급 인덱싱 ..

데이터 분석 및 시각화/파이썬

[Python] 클래스 연습문제

연습문제 기록 class Team: ### 클래스 속성 '''팀 객체를 만듭니다''' count = 0 order = [] def __init__(self, number, name = None, member = set()): ### 인스턴스 속성 self.number = number self.name = name self.__member = member Team.count += 1 Team.order.append(number) def add_member(self, name): '''팀원을 추가합니다''' # 해당 이름이 팀에 없을 경우 if name not in self.__member: self.__member.add..

데이터 분석 및 시각화/파이썬

[Python] 기초 정리(Pandas_DataFrame)

DataFrame Class DataFrame은 Pandas의 주요 데이터 구조입니다. label된 row와 column, 두개의 축을 갖는 데이터 구조입니다. 산술 연산은 row와 column 모두 적용됩니다. Series 객체를 갖는 dictionary라고 생각하면 비슷합니다. 첫 인자로 data, 두 번째 인자로 index를 전달합니다. DataFrame은 각 column마다 자료형이 다를 수 있습니다. DataFrame 생성 Series가 1차원 벡터 데이터에 행방향 index(row index)를 붙인것이라면 DataFrame 클래스는 2차원 행렬 데이터에 index를 붙인 것과 형태가 비슷합니다. row와 column을 갖는 2차원이므로 각각의 행 데이터의 이름이 되는 행 index(row i..

데이터 분석 및 시각화/파이썬

[Python] 기초 정리(Pandas_Series)

Pandas(Panel Datas) 판다스는 주로 데이터 분석에 사용됩니다. 대부분의 데이터는 시계열(Series)이나 표(table)의 형태로 나타낼 수 있습니다. Pandas 패키지는 이러한 데이터를 다루기 위한 Series 클래스와 DataFrame 클래스를 제공합니다. 숫자 테이블과 시계열을 조작하기 위한 데이터 구조와 연산을 제공합니다. Pandas package import import pandas as pdSeries class Series 클래스는 Numpy에서 제공하는 1차원 배열과 그 모양이 비슷합니다. 하지만 Series data는 배열과 다르게 각 데이터의 의미를 표시하는 index를 붙일 수 있습니다. 데이터 자체는 값(value)라고 합니다. series = pd.Series([..

데이터 분석 및 시각화/파이썬

[Python] 기초 정리(Numpy)

넘파이 배열 Numpy는 파이썬 내장 모듈이 아닙니다. 따라서 별도의 설치를 요구합니다. 하지만 아나콘다 환경 사용시 기본적으로 Numpy 패키지를 설치없이 사용할 수 있습니다. 숫자 데이터를 좀 더 쉽고 편리하게 다룰 수 있게 도와주는 패키지 숫자 데이터를 효과적으로 다룰 수 있기 때문에, 데이터 과학 및 데이터 분석에 많이 사용되는 파이썬 패키지 Numpy는 다차원 배열 자료구조 클래스인, ndarray 클래스를 지원하며, 벡터와 행렬을 사용하는 선형대수 계산에 주로 사용 import numpy as np 리스트가 아닌 넘파이 배열을 사용하는 이유 구조적으로 속도가 빠르고, 메모리를 더 적게 사용한다.(같은 종류의 데이터만 저장하기 때문에) Numpy Array VS Python List Numpy ..

데이터 분석 및 시각화/파이썬

[Python] 기초 정리(Class)

객체지향(Object Oriented) 프로그래밍 객체지향 프로그래밍은 복잡한 문제를 잘게 나누어 객체로 만들고, 객체를 조합해서 문제를 해결합니다. 현실세계의 복잡한 문제를 처리하는데 유용하며 기능을 개선하고 발전시킬 때도 해당 클래스만 수정하면 되므로, 큰 프로젝트의 유지보수에도 매우 효율적입니다. 객체가 가진 데이터를 클래스의 속성(Attribute)이라 부르고 객체가 갖는 기능을 메서드(Method)라고 부릅니다. 클래스(Class) 클래스는 사용자, 정의 객체를 만들기 위한 주형이라고 생각하면 됩니다. 클래스 정의는 보통 클래스의 인스턴스를 대상으로 연산하는 메서드 정의를 포함하고 있습니다. # 클래스명으로 주로 PascalCase(UpperCamelCase)를 씁니다. class ClassNa..

데이터 분석 및 시각화/파이썬

[Python] 기초 정리(전역변수, 지역변수, 람다(lambda))

변수의 범위(variable scope) - 전역 변수(global variable) 우리가 함수를 배우기 전까진 제일 바깥 영역인 전역 범위(global scope)에서 변수를 선언하고 활용했었습니다. 전역 범위에서 선언했기 때문에 그 변수를 스크립트 전체에서 접근 할 수 있었는데, 그 변수를 전역 변수(global variable)이라고 부릅니다. global_variable = "this is global world" print(f"global_variable in global_scope=> {global_variable}") print(hex(id(global_variable))) def local_world() print(f"global_variable in local_world=> {globa..

데이터 분석 및 시각화/파이썬

[Python] 기초 정리(함수, 문자열 메서드 join)

함수(function) 프로그래밍에서 함수(function)는 독립적으로 설계된 프로그램 코드의 집합입니다. 함수를 사용하면 반복적인 코드의 양을 줄여 유지보수성을 높여줍니다. ### 함수 정의부 def 함수명(인자, 인자,...): ## parameter : 인자 함수코드... return 반환값 ### 메인코드 x = 함수명(인수, 인수, ...) ## argument : 인수 print("결과값 :", x) 함수가 호출되면 함수정의부로 가서 함수 호출부의 인수 값을 함수 정의부 인자값에 순서대로 대입 함수 정의부 내부 코드를 순차적으로 실행 해당 함수에 return 값이 있는 경우, 함수 호출부를 return 값으로 치환 파이썬은 오버로딩(overloading) 불가 프로그래밍에서의 함수(funct..

데이터 분석 및 시각화/파이썬

[Python] 기초 정리(tuple, random, set)

튜플 : immutable(불변한) 리스트에 비해 가능한 메소드 빈 튜플(empty tuple) 비어있는 빈 튜플을 만들 때는 소괄호(())만 쓰거나 인자없는 tuple 함수를 사용하면 됩니다. empty_tuple = tuple() print(empty_tuple) print(type(empty_tuple))제너레이터 컴프리헨션(comprehension) 소괄호로 된 아래 표현식은 튜플이 아닌 제너레이터 컴프리헨션이 된다. 제너레이터도 반복 가능한 객체로 tuple() 함수를 사용하면 제너레이터 객체를 tuple로 만들 수 있습니다. generator_variable = (expression for x in range(10)) tuple(expression for x in range(10)) gener..

우상욱
'데이터 분석 및 시각화' 카테고리의 글 목록 (2 Page)