[파이썬 판다스] 시리즈에서 데이터를 분할표로 만들기 (unstack)
독립변수가 2개이고, 종속변수는 1개인 데이터를 하나 정의합시다. 독립변수는 지역, 성별이고 종속변수는 인구수 입니다. import pandas as pd import numpy as np #데이터 생성 sr1=pd.Series([50,50,30,30,20,20], index=[['서울','서울','경기','경기','제주',"제주"],['남자','여자','남자','여자','남자','여자']]) >>> sr1 서울 남자 50 여자 50 경기 남자 30 여자 30 제주 남자 20 여자 20 dtype: int64 위 데이터를 분할표로 만들 때는 unstack 메소드를 사용하면 됩니다. >>> sr1.unstack() 남자 여자 경기 30 30 서울 50 50 제주 20 20 자료형을 확인해봅시다. 데이터프레..
2022. 2. 24.
[파이썬 판다스] 시리즈에서 인덱스 여러 층으로 정의하기 (계층적 인덱스)
독립변수가 두개 이상인 자료를 표로 정리해야하는 경우가 있습니다. 예를들어 독립변수가 거주지, 성별이고 종속변수가 인구 수인 경우를 생각해봅시다. 독립변수 : 거주지, 성별 종속변수 : 인구 수 표로 정리하면 아래와 같습니다. 파이썬 시리즈에서 위 표를 정의해봅시다. import pandas as pd import numpy as np #데이터 생성 sr1=pd.Series([50,50,30,30,20,20], index=[['서울','서울','경기','경기','제주',"제주"],['남자','여자','남자','여자','남자','여자']]) 인덱스를 2차원 리스트로 정의하면 됩니다. 결과는 아래와 같습니다. >>> sr1 서울 남자 50 여자 50 경기 남자 30 여자 30 제주 남자 20 여자 20 dt..
2022. 2. 24.
[파이썬 판다스] 시리즈에서 각 원소가 특정 리스트의 어느 인덱스인지 확인하기 (get_indexer)
판다스를 불러오고 시리즈를 하나 정의합시다. import pandas as pd s1=pd.Series(['a','b','a','a','c','d','e','e']) >>> s1 0 a 1 b 2 a 3 a 4 c 5 d 6 e 7 e dtype: object 각 원소가 ['a','b','c','d','e'] 의 몇번째 인덱스인지 확인해봅시다. 이 리스트도 변수에 넣어줍니다. >>> for_idx=['a','b','c','d','e'] s1의 각 원소가 몇번째 인덱스인지 확인해봅시다. >>> pd.Index(for_idx).get_indexer(s1) array([0, 1, 0, 0, 2, 3, 4, 4], dtype=int64)
2022. 1. 10.
[파이썬 판다스] 시리즈에서 고유 값 추려내기 (unique)
판다스를 불러오고 시리즈를 하나 정의합시다. import pandas as pd s1=pd.Series(['a','b','a','a','c','d','e','e']) >>> s1 0 a 1 b 2 a 3 a 4 c 5 d 6 e 7 e dtype: object 고유 값을 추려 봅시다. unique 메소드를 사용합니다. >>> s1.unique() array(['a', 'b', 'c', 'd', 'e'], dtype=object)
2022. 1. 10.
[파이썬 판다스] 시리즈에서 중복 값 제거하기 (unique)
판다스를 불러오고 시리즈를 하나 정의합시다. import pandas as pd s1=pd.Series(['a','b','a','a','c','d','e','e']) >>> s1 0 a 1 b 2 a 3 a 4 c 5 d 6 e 7 e dtype: object 중복 값을 제거해봅시다. unique 메소드를 사용합니다. >>> s1.unique() array(['a', 'b', 'c', 'd', 'e'], dtype=object)
2022. 1. 10.
[파이썬 판다스] 시리즈의 사칙연산
판다스를 불러옵니다. import pandas as pd 시리즈를 두개 정의합니다. >>> s1=pd.Series([1,2,3,4,5],index=['a','b','c','f','g']) >>> s1 a 1 b 2 c 3 f 4 g 5 dtype: int64 >>> s2=pd.Series([10,20,30,40,50],index=['a','c','d','e','g']) >>> s2 a 10 c 20 d 30 e 40 g 50 dtype: int64 일부러 인덱스를 약간 다르게 정의했습니다. 두 시리즈를 합해봅시다. >>> s1+s2 a 11.0 b NaN c 23.0 d NaN e NaN f NaN g 55.0 dtype: float64 두 시리즈 모두에 있는 인덱스에서만 연산이 수행됩니다. 같은 인덱스..
2021. 12. 30.