출처 - DIP 대구 빅데이터 활용센터 강의
문제 1
- alchol(음주수치) 상위 10번째 값으로 상위 1~10위의 범위의 값을 변경한 후 speeding(속도)가 7이상의 alchol(음주수치) 데이터들의 평균 산출
data = df.sort_values(by = 'alcohol', ascending = False)
ten = data.iloc[9, 2]
data.iloc[:10, 2] = ten
result = data[(data['speeding'] >= 7)]
result1 = result.alcohol.mean()
result1
문제 2
- 데이터 첫번째 행부터 70% 까지의 데이터를 추출한 후 distance(거리)의 결측값을 distance(거리)의 중앙값으로 대체하고 결측값 전처리 전과 후의 표준편차를 비교
data_len = int(len(df)*0.7)
df_1 = df[:data_len]
df_2 = df_1.copy()
df_2['distance'] = df_1['distance'].fillna(df_1.distance.median())
print(np.std(df_1['distance']))
print(np.std(df_2['distance']))
문제 3
- orbital_period열의 이상치를 IQR기법으로 제거하여 이상치들의 합을 계산
Q1 = df['orbital_period'].quantile(0.25)
Q3 = df['orbital_period'].quantile(0.75)
IQR = Q3 - Q1
result = df[(df['orbital_period'] > Q3+1.5*IQR)|(df['orbital_period'] < Q1-1.5*IQR)]
result['orbital_period'].sum()
정리
df.iloc[3, 2] # df 데이터 프레임의 4행, 3열 추출 (인덱스 기준)
.mean() # 평균
.median() # 중앙값
.mode() # 최빈값
.copy() # 데이터 프레임 복사
.var() # 분산
.std() # 표준편차
np.ceil() # 올림
np.floor() # 내림
np.trunc() # 버림
df['col1'].quantile(0.25)
# df 데이터 프레임의 col1 기준 25%까지의 값을 추출
& # and 연산
| # or 연산
.dropna() # 결측치 제거