세조목

TIL(Today I Learned) 89일차(24.03.12)(str.contains, str.split, str.get, sort_values, fillna(timedelta()), index_col=0) 본문

데이터 분석 공부/TIL(Today I Learned)

TIL(Today I Learned) 89일차(24.03.12)(str.contains, str.split, str.get, sort_values, fillna(timedelta()), index_col=0)

세조목 2024. 3. 12. 20:40

Python

2024.03.12 - [데이터 분석 공부/Python] - Python - 긴 코드의 가독성 높이기(역슬래시, 메서드 체이닝)

 

Python - 긴 코드의 가독성 높이기(역슬래시, 메서드 체이닝)

긴 코드 작성 코드의 길이가 길어질 경우 코드를 한 줄에 모두 작성하면 한 눈에 보기가 힘들기때문에 역슬래시(\) 또는 메서드 체이닝 방식을 활용하여 가독성을 높일 수 있다. * 메서드 체이닝

eyeoftheworld1209.tistory.com

 

기타 학습 사항

1. 특정 문자 포함된 속성값들만 indexing하기

product_split = events2[events2['uri'].str.contains('product/')]

 

2. '/'를 기준으로 속성값 나누기

product_split = product_split.uri.str.split('/')

 

3. 특정 순서의 값 가져오기
product_id = product_split.str.get(2)

 

4. 특정 컬럼을 기준으로 정렬하기

events2.sort_values(by = ['session_id', 'created_at'], ascending = True, inplace=True)

 

5. Null값 채워넣기
events2['date_diff'] = events2['date_diff'].fillna(pd.Timedelta(0))

: fillna 소괄호 안에 pd.Timedelta(0)을 적은 이유는

date_diff 컬럼의 경우 timedelta type으로 int type인 0이 들어갈 수 없기때문에

0을 timedelta type으로 변경해줄 필요가 있었기 때문이다.

 

6. csv 파일 불러올때 index없이 불러오기

final = pd.read_csv('merge_product_head.csv', index_col=0)