Data_Handling 2

김혜민·2024년 3월 10일

Python

목록 보기
3/11

1. 문자 형태 변경

df['col'].astype[dtype]

ex) rating 열의 값이 "not given"이 아닌 행 선택
valid_ratings = fast_restaurants[fast_restaurants['rating'] != 'Not given']

ex) rating 값을 int로 변환
valid_ratings['rating'] = valid_ratings['rating'].astype(int)

2. 반복문 - 쿼리가 간단해짐!

1) Enumerate
for i, col in Enumerate(['Age','Gender','Attrition']) -- i는 index의 약자, col은 column의 약자
-> Enumerate안에 있는 col을 써서 index 해라!

print(i,col) 하게 되면!

0 Age
1 Gender
2 Attrition - 이렇게 결과 나옴!

3. select, count, isnull → SQL과 같은 기능!

df.select/count/isnull("col_name").show()

4. filter, where → SQL where과 같은 기능!

df.filter(F.col("col_name")=="보고싶다 성재").select("col_name").show()
→ df.filter(F.col("col_name").isnull()) 이렇게도 사용가능!

5. when → SQL case when과 같은 기능!

df
.select(
    "Pack",
    F.when(
        F.col("Pack") > 12, "over bulk"
    ).otherwise("unit").alias("Pack_bin")
).show()

6. collect_set, collect_list

  • 특정 조건에 맞는 값들의 set, list
  • collect_set → Object들의 고유한 집합(=distinct), collect_list → Object의 집합을 반환
df.select(F.collect_set('col_name')).show()

7. size

  • Col에 있는 array의 길이를 반환
  • list 형태의 len과 유사한 기능

8. withcolumn

  • 기존 Col의 업데이트 ,타입변경, 신규 Col 추가
df.withcolumn("Col_name", 넣고 싶은 값)

9. 날짜 데이터 형식 변경

df['Date']= pd.to_datetime[df['col']]

df['Year']= df['year'].dt.year → year 추출
df['Month']= df['Month'].dt.month → month 추출
df['Day']= df['Day'].dt.day → day 추출
df['weekday'] = df['event_time'].dt.day_name() → 요일 추출

10. Value_counts()

  • 시리즈내 고유값의 개수를 시리즈로 변환! 몇번 나타나는지!
df.value_counts()
* ()안에 normalize=True를 쓰게 되면 그 Col내의 고유값 비율을 알 수 있음!
profile
성장하는 주니어 데이터 분석가입니다!

0개의 댓글