반응형
T1-19
데이터프레임에 행별로 어떤 조건에 따라 어떤 내용을 적용할때
이렇게 어플라이 가능함.
def calc(x):
if x['Events'] == 1:
x['Sales_new'] = x['Sales'] * 0.8
else:
x['Sales_new'] = x['Sales']
return x
df = df.apply(lambda x: calc(x),axis=1)
T1-20
판다스 merge 함수.
df = pd.merge(left = b1 , right = b3, how = "left", on = "f4")
how 에 넣을 수 있는 건 ‘left’, ‘right’, ‘outer’, ‘inner’, ‘cross’ 디폴트는 inner
T1-21
이상치 제거
# age 이상치 (음수(0포함) 제거
df = df[~(df['age'] <= 0)]
동일한 개수로 나이 순으로 3그룹으로 나눈 뒤
df['range'] = pd.qcut(df['age'], q=3, labels=['group1','group2','group3'])
같은 길이로 구간 나누기 pd.cut
같은 갯수로 구간 나누기 pd.qcut
cut: 데이터가 있으면 그 데이터의 최소-최대값으로 구간을 나눠서, 데이터를 집어넣어줌.
qcut: 데이터 갯수가 구간별 동일하게 구간을 나누어줌
import pandas as pd
import numpy as np
# cut: 구간의 크기가 동일함.
# 구간에 속한 데이터 갯수는 다름.
# 개수를 넣으면 구간의 개수 설정 가능.
# 배열 형태 넣으면 지정한 구간으로 넣어줌.
# labels 넣으면 라벨 붙여줌
np.random.seed(122)
normal = np.random.normal(size=10000)
print(normal)
bins = pd.cut(normal,5)
# print(bins.categories)
print(bins.describe())
np.random.seed(122)
mj = np.random.randint(1,100,50)
bins = pd.cut(mj,5)
print(bins.describe())
np.random.seed(122)
ages = np.random.randint(6,45,50)
ranges = [5,12,18,35,50]
age_bins = pd.cut(ages,ranges)
print(age_bins.describe())
labels = ['어린이','청소년','청년','중년']
age_bins = pd.cut(ages,ranges,labels=labels)
print(age_bins.describe())
########################################
# qcut 같은 갯수로 구간 나누기
same_count_bins = pd.qcut(normal,5)
print(same_count_bins.describe())
문자열
문자열.count('특정문자')
: 문자열에 특정문자 몇개있는지
문자열.find('특정문자')
: 문자열에 특정문자의 위치
'특정문자'.join( 문자열 )
: 문자열 사이마다 특정문자 삽입된 문자열
','.join("apple")
a,p,p,l,e
대문자,소문자 바꾸기
"apple".upper()
"APPLE".lower()
문자열공백제거
rstrip() 문자열 오른쪽의 공백제거
lstrip() 문자열 왼쪽의 공백 제거
strip() 문자열 양쪽에 있는 공백 제거
추가로 이것저것
리스트 = [1,2,3,4,5]
리스트.index(특정요소)
특정요소의 값이 리스트에서 몇 번째에 위치하고 있는지.
리스트.remove(x)
첫번째로 등장하는 x값 제거. 요소제거.
리스트.insert(x,y)
x 위치에 y를 삽입
리스트.pop(x)
x 위치의 값을 추출하고 제거.
비복원추출기법.
리스트.count(x)
리스트에 존재하는 x값의 개수를 계산한다.
#문자열도 동일한 원리로 사용가능
딕셔너리.keys()
딕셔너리.items()
딕셔너리.get(x)
x의 키에 해당하는 값 확인
딕셔너리.get(x,y)
x의 키가 존재하지 않을 때 y값을 반환
T1-22
판다스의 resample 함수사용
참고할만한 링크
T1-22 리샘플링 쪽 부터 복습 시작
그리고 책은 122~
반응형
'IT,SW,Data,Cloud,코딩 > Python' 카테고리의 다른 글
2023년6월24일 제6회 빅데이터분석기사 실기 시험 후기 및 준비 방법 (0) | 2023.06.26 |
---|---|
20230623 그 외 함수 (문자열 등) (0) | 2023.06.23 |
빅분기 실기 대비 요약노트 (0) | 2023.06.23 |
20230621 캐글 연습문제 풀기 (0) | 2023.06.22 |
20230620 넘파이 ceil, floor, trunc (0) | 2023.06.21 |
20230619 lightgbm (0) | 2023.06.19 |
20230619 빅분기 공부 5회 기출 유형 (0) | 2023.06.19 |
20230617 빅분기 4회 기출유형 제2유형 (0) | 2023.06.17 |
댓글