결측치에 그룹별 최빈값 대입하기
결측치에 그룹별 최빈값 넣기¶ In [1]: import numpy as np import pandas as pd In [73]: # 데이터프레임 생성 df1 = pd.DataFrame({'col1' : list('a' * 4 + 'b' * 4), 'col2' : [np.nan, 1, 1, 2, np.nan, 3, 2, 1]}) df1 Out[73]: col1 col2 0 a NaN 1 a 1.0 2 a 1.0 3 a 2.0 4 b NaN 5 b 3.0 6 b 2.0 7 b 1.0 In [70]: # a 그룹에서는 최빈값이 1 하나만 나오지만, b 그룹에서는 최빈값이 여럿이라 1, 2, 3 모두 출력 df1.groupby('col1')['col2'].apply(pd.Series.mode) Out[70]:..
2022. 11. 27.
조건에 맞는 데이터에 값 대입
조건에 맞는 데이터에 값 대입¶ 데이터프레임에서 특정 조건을 만족하는 데이터를 조건색인으로 검색해 값을 대입하는 경우 In [1]: import pandas as pd import numpy as np In [4]: # 데이터프레임 생성 x = pd.DataFrame({'no':[30, 30, 32, 33, 34], 'name':['James', 'Min', 'Kevin', 'Liz', 'Anne']}) x Out[4]: no name 0 30 James 1 30 Min 2 32 Kevin 3 33 Liz 4 34 Anne In [3]: # no가 30인 데이터의 name을 aa로 변경 x.loc[x['no'] == 30, 'name'] = 'aa' x Out[3]: no name 0 30 aa 1 30..
2022. 11. 11.