map 함수 사용 필수적인가요
72
작성한 질문수 1
작업형1 - section14 를 먼저 풀었을 때 아래처럼 작성하였습니다
답은 맞게 나오긴하는데 풀이에선 map을 활용하였더라고요. 따라서 써보려고 하는중인데 영 손에 익지않습니다 ㅠㅠ
혹시 이후 과정에서도 map을 많이 사용한다면 최대한 외워보려고 하는데 필수적일까요 ..?
import pandas as pd
# df = pd.read_csv("type1_data1.csv")
df = pd.read_csv("https://raw.githubusercontent.com/lovedlim/inf/refs/heads/main/p1/type1_data1.csv")
#print(df.shape)
# 1 중복 데이터 제거
df = df.drop_duplicates()
#print(df.shape)
# 2 f3 변환
## 결측치 -> 0
# print(df.isna().sum())
df['f3'] = df['f3'].fillna(0)
# print(df.isna().sum())
## silver -> 1 , gold -> 2, vip -> 3
cond1 = df['f3'] == 'silver'
cond2 = df['f3'] == 'gold'
cond3 = df['f3'] == 'vip'
df[cond1] = 1
df[cond2] = 2
df[cond3] = 3
# 3 f3 sum()
result = df['f3'].sum()
print(result)
답변 2
0
map()을 활용한 풀이
df['f3'] = df['f3'].map({'silver': 1, 'gold': 2, 'vip': 3}).fillna(0)
ap() 핵심 개념
map()은 딕셔너리를 넘겨주면 해당 값으로 치환하고, 딕셔너리에 없는 값은 자동으로 NaN으로 처리합니다. 따라서 결측치(NaN)와 매핑되지 않은 값 모두 .fillna(0)으로 한 번에 0으로 채울 수 있어 코드가 훨씬 간결해집니다.
기존 코드처럼 조건문(cond1, cond2, cond3)으로 작성해도 답은 동일하게 나오지만, map()을 사용하면 한 줄로 처리할 수 있어 시험 시간을 절약할 수 있습니다.
0
안녕하세요, 인프런 AI 인턴입니다. 이수현님께서 작업형1의 데이터 변환 과정에서 map 함수를 사용하는 것이 필수적인지에 대한 질문을 주셨네요.
현재 사용하신 방법으로도 f3 컬럼의 변환은 정확하게 수행되고 있으며, 최종 결과가 올바르게 나오는 것에 중점을 두신 것 같습니다. 그럼에도 map을 고려하는 이유는 코드의 간결성 및 효율성에 있습니다. map 함수를 활용하면 조건문을 여러 번 사용하지 않고도 한 줄로 값을 변환할 수 있습니다. 예를 들어:
df['f3'] = df['f3'].map({'silver': 1, 'gold': 2, 'vip': 3}).fillna(0)
- 위의 코드는
map함수를 통해 ‘silver’, ‘gold’, ‘vip’이라는 문자열 값을 각각 1, 2, 3으로 변환하며, 동시에 결측치도 0으로 채웁니다. 이처럼map함수는 가독성을 높이고 코드의 양을 줄이는 데 도움을 줍니다.
map 함수의 중요성과 활용성
map함수는 Pandas 데이터프레임에서 데이터 변환 시 매우 유용합니다. 특히 범주형 데이터를 수치형 등으로 변환할 때 강력한 도구입니다.
- 이후 더 복잡한 변환이나 데이터 전처리가 필요한 경우,
apply,applymap등과 함께 사용되기도 하므로 익숙해지는 것이 데이터 처리 과정에서 큰 이점이 될 것입니다.
관련된 기존 질문 및 답변을 참고하시기 바랍니다:
문제3 변환 관련 문의: 데이터 매핑 관련 다양한 접근 방식을 설명하고 있습니다.
작업형1 모의문제1의 문제3에 대해 여쭙습니다~: 데이터 변환 시
loc메서드와map함수의 효율적인 사용법을 안내합니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
수강기간 연장 문의드립니다!
0
11
1
2회 기출유형(작업형1) Warning
0
25
2
describe()
0
40
2
수강기간 연장 문의
0
66
2
빅데이터분석기사 실기 인코딩
0
61
2
수강기간 연장문의
0
63
2
수강 기간 연장 문의 드립니다.. 부탁드립니다 ㅠㅠ
0
51
2
작업형2와 3의 목적
0
40
1
기출9회(작업형 1의 2번문제)
0
40
2
수강 기간 연장 문의 드립니다.
0
57
2
수강 연장 문의드립니다
0
66
2
수강 연장 문의드립니다.
0
52
2
재결제 가능할까요...
0
59
1
비전공자 빅분기 실기 공부방법
1
69
2
강의일시정지 요청합니다
0
63
2
강의 연장 가능할까요 ㅠㅠ
0
58
2
수강 연장 문의드립니다.
0
63
2
수강기간 연장 가능 여부 문의드립니다.
0
83
1
수강 기간 연장 가능 여부 문의드립니다
0
85
2
강의 업데이트
0
81
2
수강 연장 문의드립니다.
0
102
2
강의 연장 문의
0
76
2
수강 신청 연장 문의드립니다.
0
89
2
작업형 1번문제... 환경관련
0
67
2





