Challange

패스트캠퍼스 환급챌린지 48일차 미션 (3월 19일) : 데이터 분석 Master Class 강의 후기

@0-0 2024. 3. 19. 23:49
반응형

48일차!

 

 

 

 

 

 


 

Part 3. PYTHON _ 데이터 분석 프로젝트

 

 

 

 

 

04. 파이썬 데이터 분석 프로젝트

 

6. 부동산 데이터: 최적의 자취방 구하기

 
1) 크롤링

article_list = []
for i in tqdm(range(1, 101)):
    try:
        url = f'https://m.land.naver.com/cluster/ajax/articleList?itemId=&mapKey=&lgeo=&showR0=&rletTpCd=OPST%3AVL%3AOR&tradTpCd=B2&z=12&lat=37.481021&lon=126.951601&btm=37.3398975&lft=126.6762562&top=37.6218785&rgt=127.2269458&totCnt=8360&cortarNo=1162000000&sort=rank&page={i}'

        user_agent = generate_user_agent()
        headers = {'User-Agent':user_agent}

        res = requests.get(url, headers=headers)
        time.sleep(1)

        article_json = res.json()
        article_body = article_json['body']
        article_list.append(article_body)
    except:
        break

 

crawling_1

 

 

2) 질문 만들기

< 최적의 자취방 구하기 >
1. 보증금 3000만원 이하       
2. 월세는 저렴할수록 좋음       
3. 지하, 반지하, 꼭대기층은 선호하지 않음       
4. 전용면적이 클수록 좋음       
5. 북향은 선호하지 않음       
6. 연식이 오래되지 않을수록 좋음       
. 지하철 역에서 가까울수록 좋음

 

 

 

3) 데이터 전처리

- 월세가 0원인 경우 제외

- 데이터 타입 변환

- 지하, 반지하, 꼭대기층 유무 컬럼

- 연식 컬럼

- 위도, 경도를 이용하여 역까지의 거리 재기

 

* 거리재기

from haversine import haversine		# 위도, 경도 거리 재는 라이브러리

haversine((37.487462,126.913149), (37.484201,126.929715), unit = 'm')

def distance(station_name, lat, long):
    station_lat = coordinate.query(f'역사명 == "{station_name}"')['위도'].values[0]
    station_long = coordinate.query(f'역사명 == "{station_name}"')['경도'].values[0]

    distance = haversine((station_lat, station_long), (lat, long), unit = 'm')

    return distance

 

=> 최종 데이터

crawling_2

 

 

 

 

 

 

 

본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성하였습니다.

 

 

 

 

:: https://bit.ly/48sS29N

 

패스트캠퍼스 [직장인 실무교육]

프로그래밍, 영상편집, UX/UI, 마케팅, 데이터 분석, 엑셀강의, The RED, 국비지원, 기업교육, 서비스 제공.

fastcampus.co.kr

 

반응형