전체 글

Garbage in, garbage out
파이썬・ML/numpy

넘파이 배열의 생성법과 기본 속성 이해하기

이번 포스팅에서는 넘파이 배열을 생성하는 방법과 넘파이 배열의 속성에 대해 알아보도록 하겠습니다. import numpy as np 1. 넘파이 배열 생성하기 넘파이 배열을 만드는 여러 메서드가 존재합니다. 넘파이 라이브러리가 생성하는 모든 배열의 타입은 numpy.ndarray입니다. ✅ np.array # a(스칼라) a = np.array(3.14) print(a) # 3.14 b(벡터) b = np.array([1, 2, 3]) print(b) # [1 2 3] c(행렬) c = np.array([[1, 2, 3], [4, 5, 6]]) print(c) # [[1 2 3] # [4 5 6]] d(3차원 텐서) d = np.array([[[1, 2, 3], [4, 5, 6]], [[7, 8, 9],..

파이썬・ML/numpy

넘파이 배열 shape 속성에 대한 이해

안녕하세요! 넘파이 라이브러리 관련 첫 포스팅입니다. 이번 첫 포스팅에서는 넘파이 배열의 shape 속성에 대해 알아보도록 하겠습니다. 넘파이 배열의 연산이 어떻게 수행되는지 알기 위해서는 shape 속성에 대한 이해가 필요합니다. 1. shape 속성 읽는 방법 1-1. 스칼라 → 벡터 스칼라가 여러 개 모이면 1차원 배열(벡터)을 형성합니다. 위 그림에서는 3개의 스칼라가 모여 shape이 (3, )인 1차원 배열이 만들어집니다. 이때 만들어진 벡터를 보고 다음과 같이 생각해 볼 수 있어야 합니다. "1차원 배열이 3개의 원소로 구성되어 있네? 그리고 그 각 원소는 스칼라구나!" 1-2. 벡터 → 행렬 1차원 배열(벡터)이 여러 개 모이면 2차원 배열인 행렬을 이룹니다. 위 그림에서 shape이 (3..

파이썬・ML/pandas

판다스 Series 정리(2) 인덱싱/필터링/정렬/연산/결측값

지난 포스팅에 이어 이번 포스팅에서도 판다스 Series에 대해 알아보도록 하겠습니다. import pandas as pd import numpy as np 1. Series 인덱싱 Series를 인덱싱하는 방법은 2가지가 존재합니다. 일반적인 인덱싱 (파이썬과 넘파이식 인덱싱과 슬라이싱) 커스텀 인덱싱 (Series의 인덱스 레이블, 즉 index 속성을 사용) iloc, loc 접근자 2, 3번째 인덱싱 기법에 대해 집중적으로 알아보겠습니다. ✅ 커스텀 인덱싱 sales = [0, 5, 155, 0, 518] items = ['coffee', 'banana', 'tea', 'coconut', 'sugar'] sales_series = pd.Series(sales, index=items, name='S..

파이썬・ML/pandas

판다스 Series 정리(1) 특징/속성/생성법

안녕하세요! 판다스 라이브러리 관련 첫 포스팅입니다! 😎 판다스는 넘파이 라이브러리와 연결고리가 많습니다. 바로 이번 포스팅에서 살펴볼 Series가 넘파이 배열에 기반한 판다스 자료구조입니다. 그러면 지금부터 본격적으로 Series에 대해 알아보도록 하겠습니다. import pandas as pd import numpy as np 1. Series 특징 Series는 판다스 라이브러리의 가장 기본적인 자료구조입니다. 1차원 배열과 유사한 Series는 다음 2가지 특징을 갖습니다. 동일한 타입의 데이터만 담을 수 있습니다. 각 값에 레이블 또는 순서를 할당합니다. 이 두 참조점을 사용하면 Series 데이터에 접근이 가능합니다. flavors = ['chocolate', 'vanilla', 'straw..

파이썬・ML/matplotlib・seaborn

matplotlib 사용법 기초(add_subplot/subplots/subplot2grid/add_axes)

파이썬 데이터 시각화 관련 첫 포스팅입니다! 🤗 이번 포스팅에서는 matplotlib 라이브러리로 레이아웃을 구성하는 방법에 대해 알아보도록 하겠습니다. import matplotlib.pyplot as plt plt.figure fig = plt.figure() plt.figure 메서드는 그래프를 그리기 위한 전체 영역을 확보합니다. 단, 영역만 확보할 뿐 아직 아무것도 그려지지는 않습니다. 이렇게 인스턴스화 한 figure 객체는 그래프를 그릴 수 있는 넓은 도화지라고 생각하면 됩니다. fig.add_subplot fig.add_subplot 메서드는 확보된 영역에 차트를 그릴 수 있는 영역인 ax 객체를 생성합니다. 전달 가능한 매개변수의 목록은 다음과 같습니다. nrows (fig 객체의 행 개..

파이썬・ML

파이썬 문자열 함수 총정리

이번 포스팅에서는 파이썬 문자열의 내장함수에 대해 알아보도록 하겠습니다. 판다스 Series의 str 접근자를 사용해서 사용할 수 있는 문자열 관련 메서드들과 관계가 있는 만큼 디테일하게 정리해보겠습니다. find tmp = 'apple' print(tmp.find('l')) # 3 print(tmp.find('z')) # -1 찾고자 하는 문자가 문자열에서 처음으로 등장하는 인덱스를 리턴합니다. 해당 문자가 존재하지 않으면 -1을 리턴합니다. index tmp = 'orange' print(tmp.index('r')) # 1 print(tmp.index('z')) # ValueError: substring not found find 함수와 마찬가지로 찾고자 하는 문자가 위치한 인덱스를 리턴합니다. 하지..

파이썬・ML

파이썬 딕셔너리 함수 총정리

이번 포스팅에서는 파이썬 자료구조 중 하나인 딕셔너리의 내장함수에 대해 알아보도록 하겠습니다. keys user = {'name': 'mason', 'age': 100, 'city': 'Seoul', 'MBTI': 'INFJ'} print(user.keys()) # dict_keys(['name', 'age', 'city', 'MBTI']) for key in user.keys(): print(key, end=' ') # name age city MBTI # 리스트의 내장함수 count를 사용하면 에러가 발생합니다. user.keys().count('age') # AttributeError: 'dict_keys' object has no attribute 'count' user_as_list = list..

파이썬・ML

파이썬 collections 모듈 Counter 사용하기

최근에 pandas로 데이터를 가공하면서 Counter 객체를 요긴하게 사용한 기억이 있습니다. 이번 포스팅에서 collections 모듈의 Counter에 대해 알아보도록 하겠습니다. from collections import Counter 1. 기본 사용법 counter1 = Counter('banana') print(counter1) # Counter({'a': 3, 'n': 2, 'b': 1}) counter2 = Counter(['jason', 'harriet', 'john', 'john', 'harriet']) print(counter2) # Counter({'harriet': 2, 'john': 2, 'jason': 1}) 카운터 클래스는 파이썬 자료구조인 딕셔너리의 확장판입니다. 따라서 모..

truezero
데이터 공부하는 제이슨