본문 바로가기
반응형

Python65

카테고리 인덱스(CategoricalIndex) 기반 중복인덱싱-pandas(49) 파이썬 버전 3.8 기준pandas 버전 1.2.0 기준 카테고리 인덱스(CategoricalIndex)기반 중복인덱싱 본 포스팅에서는 Pandas에서 제공하는 카테고리 인덱스(CategoricalIndex) 타입에 대해 다루도록 한다. CategoricalIndex CategoricalIndex는 카테고리 인덱스로 pandas에서 제공하는 인덱스 유형 중 하나이다. 이 인덱스는 카테고리로 나누어 값을 저장할 수 있는 인덱스를 형성시킬 수 있다. ○ 중복되는 인덱스에 여러가지 값을 담을 수 있으며 해당 인덱스는 카테고리로 인식된다. ○ 따라서 복사본(중복)을 사용한 인덱싱을 필요로 할 때 유용하다. ○ 효율적인 인덱싱과 많은 수의 중복된 요소를 포함하는 인덱스의 저장을 가능하게 한다. Categorica.. 2021. 1. 6.
구간 인덱스 타입(IntervalIndex)과 구간인덱스 생성-pandas(48) 파이썬 버전 3.8 기준pandas 버전 1.2.0 기준 구간 인덱스 타입(IntervalIndex)과 구간인덱스 생성 본 포스팅에서는 Pandas에서 제공하는 구간인덱스인 IntervalIndex에 대해 다루도록 한다.또한 구간인덱스를 생성하기 위한 interval_range()함수에 대해서도 설명을 하도록 한다. IntervalIndex과 인덱싱 IntervalIndex는 구간인덱스로, 특정 숫자 구간에 대한 값들을 저장할 때 사용한다.pandas에서는 Interval에 대한 표기법에 대해서 지원되며, 이는 InterValIndex와 하부 dtype을 포함한다. IntervalIndex는 몇몇의 독특한 인덱싱을 할 수 있게하며, 또한 cut()과 qcut()에서 카테고리에 대한 자료형을 반환하는데 사.. 2021. 1. 5.
숫자형 인덱스(Index)타입(Int64Index, Float64Index)-pandas(47) 파이썬 버전 3.8 기준pandas 버전 1.2.0 기준 숫자형 인덱스 유형 본 포스팅에서는 Pandas에서 제공하는 숫자형 인덱스 타입에 대해 다루도록 한다.Int64Index, RangeIndex, Float64Index 대해 다뤄보도록 한다. 정수형 인덱스 타입 Int64Index 와 RangeIndexInt64Index는 정수를 기반으로 한 인덱스로, pandas에서 근본적인 기초인덱스이다.이 인덱스는 정렬되고 슬라이스가 가능한 세트를 실행하는 불변형 배열이다.0.18.0 버전 이전에는 NDFrame 객체에 대해 Int64Index가 기본인덱스로 제공되었다. RangeIndex는 Int64Index의 서브클래스이며, 0.18.0 버전에서 추가되었다. 지금은 NDFrame에 기본값으로 제공되고 있다.. 2021. 1. 4.
멀티인덱스와 인덱스 정렬, sort_index()메서드-pandas(46) 파이썬 버전 3.8 기준pandas 버전 1.2.0 기준 멀티인덱스(MultiIndex)와 인덱스 정렬 sort_index()메서드 본 포스팅에서는 멀티인덱스(MultiIndex)와 인덱스를 정렬하는 방법에 해대 다뤄보도록 한다.이를 위해 sort_index() 메서드를를 사용하고, 해당 메서드에 대한 설명을 해보도록 한다. 추가적으로 is_lexsorted() 메서드를 이용한 인덱스가 정렬여부 확인 예제와 lexsort_depth 속성을 통해 멀티인덱스 정렬의 깊이를 확인할 수 있는 예제를 다루도록한다. MultiIndex와 Index의 정렬 멀티인덱스(MultiIndex)와 인덱스(index)의 정렬을 위해 sort_index() 메서드를 사용할 수 있다.sort_index() 메서드는 주어진 축을 .. 2020. 12. 29.
데이터의 열의 빠른 추출, take() 메서드-pandas(45) 파이썬 버전 3.8 기준pandas 버전 1.2.0 기준 데이터의 열의 빠른 반환, take() 메서드 본 포스팅에서는 take메서드를 다루도록 한다.take 메서드는 데이터의 행이나 열을 추출할 때 iloc 메서드보다 좀 더 빠른 성능을 기대할 수 있다. take() 메서드 Numpy의 ndarrays와 유사하게 pandas의 인덱스, Series, DataFrame은 또한 take() 메서드를 제공한다. take() 메서드는 입력된 축과 정수 인덱스에 해당하는 요소들을 반환한다. take() 메서드에 대한 특징으로는 다음과 같다. ○ 주어진 인덱스들은 반드시 정수의 인덱스 위치로 이루어진 ndarray나 리스트이어야 한다. ○ take() 메서드는 또한 음수의 정수도 사용할 수 있다. ▷ 파이썬과 마.. 2020. 12. 28.
멀티인덱스의 슬라이스(slice)와 단면(cross-section)추출-pandas(44) 파이썬 버전 3.8 기준pandas 버전 1.1.4 기준 멀티인덱스의 슬라이스와 단면추출 본 포스팅에서는 멀티인덱스에서의 슬라이스와, 단면추출을 하는 방법에 대해 다뤄보도록 한다.이를 위해 pandas.IndexSlice와 xs메서드를 다룬다. 슬라이서의 사용 사용자는 MultiIndex에서 다수의 인덱서(indexer)를 사용하는 것으로 슬라이싱 할 수 있다. 슬라이싱을 할때 레이블에 의해 인덱싱이 가능하다(선택자(Selector)를 이용한 인덱싱 등). ○ 선택자는 슬라이싱, 레이블의 리스트, 레이블들, 불린인덱서를 포함한다. ○ 상세한건 이전의 슬라이스 포스팅(슬라이싱을 이용한 선택)을 참고하자. 사용자는 특정 Level의 모든 내용물을 선택하기 위해 slice(None)을 사용할 수 있다. ○ s.. 2020. 12. 27.
멀티인덱스(MultiIndex)의 인덱싱(indexing)-pandas(43) 파이썬 버전 3.8 기준pandas 버전 1.1.4 기준 멀티인덱스(MultiIndex)의 인덱싱(indexing) 본 포스팅에서는 멀티인덱스를 인덱싱하는 방법에 대해서 다루도록 한다.이를 위해 대괄호 [ ]를 활용하는 방법과 .loc메서드를 이용하여 다루는 방법을 소개한다.이외에 슬라이싱(slicing)을 이용한 데이터 선택에 대해서도 간략히 소개한다.멀티인덱스가 아닌 일반적인 인덱싱에 대한 방법은 선행 포스팅(링크)를 참고할 수 있다. MultiIndex의 기본적인 인덱스 방법 멀티인덱스(MultiIndex)의 인덱싱의 중요한 기능 중 하나는 사용자가 레이블로 데이터를 선택할 수 있다는 점이다. 데이터 선택은 DataFrame에서 열을 선택할 때랑 유사하게 작동한다. 열(Column)의 멀티인덱스 선.. 2020. 11. 8.
멀티인덱스 레이블의 추출과 비사용 level의 제거-pandas(42) 파이썬 버전 3.8 기준pandas 버전 1.1.1 기준 멀티인덱스 레이블의 추출과 비사용 level의 제거 본 포스팅에서는 멀티인덱스(MultiIndex)의 특정 level(단계)의 레이블을 추출하고, 사용하지 않는 level(단계)를 삭제하는 방법에 대해 다루도록 한다.이를 위해 get_level_values() 메서드와 remove_unused_levels() 메서드를 소개한다. 특정 level 레이블의 추출을 위한 get_level_values() 메서드 사용자가 MultiIndex에서 특정 level(단계)의 레이블을 추출해야하는 경우에는, get_level_values() 메서드를 이용하면된다.get_level_values() 메서드는 특정 level에서 각각의 위치에 대한 레이블의 벡터를 반.. 2020. 11. 5.
멀티인덱스(Multiindex)의 생성-pandas(41) 파이썬 버전 3.8 기준pandas 버전 1.1.1 기준 멀티인덱스 생성 본 포스팅에서는 멀티인덱스에 대한 소개와 생성하는 방법에 대해서 다루도록 한다.이를 위해 from_arrays(), from_tuples(), from_product(), from_frame() 함수를 소개하며 이를 이용한 생성 예제를 다룬다. 다단계 인덱싱(멀티인덱스) 멀티인덱스는 데이터 프레임에 여러 level(단계)의 인덱스를 넣는 것을 지칭한다.즉, 인덱스를 다단계로 만들어 다차원 객체를 생성할 수 있다. ○ 다단계/멀티인덱싱은 꽤 정교한 데이터분석과 조작을 할 수 있게 한다. ○ 그중에서도 특히 높은 차원(Dimension)을 다루는데 유용하다. ○ 사용자에게 Series(1D)나 DataFrame(2D)같은 낮은 차원의 .. 2020. 11. 4.
반응형