본문 바로가기

나 취준생/프로젝트

토이 프로젝트 - 사람인 '데이터 분석'을 분석

320x100

지금까지 파이썬, SQL, 리눅스와 각종 툴을 조금 배워봤으니

배운 것들을 활용해서 데이터 분석의 전반적인 흐름을 정말 미흡하게나마 해보고자 정말 작은 프로젝트를 시작하게 되었다.

 

# 내가 생각하는 데이터 사이언스 업무 과정

 

문제 설정 - 스킬 활용 - 문제 해결 과정 ( 데이터 수집 - 데이터 분석 - 분석 결과 도출 - 결과 시각화 )

 

# 내가 선택한 스킬

 

1. 데이터 수집 - 파이썬 크롤링

 

2. 데이터 분석 - SQL

 

3. 분석 결과 시각화 - 파이썬, R

 

추가적으로 리눅스 서버를 활용하기 위해 Centos7을 통하여 MariaDB를 연동

 

 

# 프로젝트 주제

 

캐글에 다양한 자료들이 있었지만, 내가 알아보고 싶은 흥미로운 주제를 찾지 못했고,

또 뭔가 내 주변의 일상적인 문제를 주제로 삼고 싶었다.

 

지금 내 문제 중 하나는 데이터 분석가를 채용 사이트에서 자주 검색하고 있지만

평균 연봉이나 근무 환경 등 데이터 분석가에 대한 위치가 어떤 정도인지 정확한 정보를 갖고 있지 않다는 것이다.

또한 경력직을 선호하는 공고 글을 자주 보았기 때문에, 어느 정도의 경력이 데이터 분석가로서 의미있는 스펙이 되는지 확인하고 싶었다.

 

사람인에서 경력, 학력, 지역, 연봉, 기업형태, 복리후생에 따른 몇 건의 공고가 검색되는지를 기준으로 잡았다.

 

saramin_4_career_company_welfare_csv_final.py
0.01MB
saramin_5_career_pay_csv_final.py
0.00MB
saramin_6_loc_pay_final.py
0.01MB
saramin_7_loc_welfare_csv_final.py
0.00MB
saramin8_loc_num.py
0.00MB

총 이런 느낌의 csv 파일을 5개 만들었다.

1. 경력 - 기업 형태 - 연봉 - 기업수

2. 기업 형태 - 복리후생 - 기업수

3. 지역 - 연봉 - 기업수

4. 지역 - 복리후생 - 기업수

5. 지역별 기업수

 

car_com_wel.csv
0.37MB
car_pay.csv
0.00MB
loc_cnt.csv
0.00MB
loc_pay.csv
0.03MB
loc_wel.csv
0.21MB

사실 모든 요소를 한 번의 크롤링으로 대용량으로 만들고 싶었는데

 

경력(15)*지역(180)*기업형태(18)*연봉(15)*복리후생(100) * html 업데이트 2초

약 4만 시간이 필요해서 아쉽지만 쪼개서 크롤링하기로 했다.

근데 해보니까 변수 3개만 넣어도 크롤링 하는데에 5시간 넘게 걸렸다.

 

중간에 눈치채지 못한 오류도 많이 발생해서

노트북 2개를 동시에 크롤링하면서 작업하는데도 정말 오랜 시간이 걸렸다

 

 

# 마리아 DB 연동

 

create table car_com_wel

(career varchar(20),

company varchar(20),

welfare varchar(10),

cnt int (10));

 

LOAD DATA LOCAL INFILE '/home/scott/project/car_com_wel.csv'

REPLACE

INTO TABLE car_com_wel

fields TERMINATED BY ','

ENCLOSED BY '"'
LINES TERMINATED BY '\n'
IGNORE 1 LINES
(career,company,welfare,cnt);

 

마리아 DB 연동 중에

중간에 csv 파일 내의 한글이 깨지는 현상이 발생해서

 

먼저 csv 파일을 메모장으로 열어 인코딩을 UTF-8로 맞춰 저장하고,

 

리눅스 서버에서

# su -

# vi /etc/my.cnf

 

vi 편집기 연 뒤

[client]
default-character-set=utf8

[mysql]
default-character-set=utf8

[mysqld]
collation-server = utf8_unicode_ci
init-connect='SET NAMES utf8'
character-set-server = utf8

 

추가한 후 빠져나와

mysql 설정을 리스타트

[root@centos etc]# sudo service mysql restart

 

Maria DB 접속 후

MariaDB [orcl]> use orcl

MariaDB [orcl]> alter database orcl default character set UTF8;

한 뒤 다시 해보니 되었다.

 

select * from car_com_wel;

해보니 MariaDB까지도 잘 데이터가 입력되었다.

반응형