본문 바로가기
데이터 어쩌구/전처리 및 시각화

[부스트코스] 캐글 실습 : 설문조사 응답 분석 (9)

by annmunju 2021. 3. 19.

2021.01.25 - [공부/3. 데이터 사이언스] - [부스트코스] 캐글 실습 : 설문조사 응답 분석 (8)

 

[부스트코스] 캐글 실습 : 설문조사 응답 분석 (8)

2021/01/25 - [공부/3. 데이터 사이언스] - [부스트코스] 캐글 실습 : 설문조사 응답 분석 (7) [부스트코스] 캐글 실습 : 설문조사 응답 분석 (7) 2021/01/25 - [공부/3. 데이터 사이언스] - [부스트코스] 캐글

mungdo-log.tistory.com

 

 

Q11. 데이터사이언스 직업을 찾는데 가장 고려해야 할 요소는 무엇일까요?

qc = question.loc[question['Column'].str.contains('JobFactor')]
print(qc.shape)
qc.Question.values

JobFactor가 포함된 Column을 qc에 저장 > Question열의 값들을 출력하라

mcq = pd.read_csv('/content/drive/My Drive/kaggle/2017_data/multipleChoiceResponses.csv', 
                  encoding="ISO-8859-1", low_memory=False)
job_factors = [x for x in mcq.columns if x.find('JobFactor') != -1]
jfdf = {}
for feature in job_factors:
    a = mcq[feature].value_counts()
    a = a/a.sum()
    jfdf[feature[len('JobFactor'):]] = a

jfdf = pd.DataFrame(jfdf).transpose()

plt.figure(figsize=(6,10))
plt.xticks(rotation=60, ha='right')
sns.heatmap(jfdf.sort_values('Very Important', 
                             ascending=False), annot=True)

jfdf 딕셔너리에 저장 : a 변수에 질문 별로 Somewhat important는 얼마, Very Important는 얼마, Not important는 얼마인지 a/a.sum()으로 각각 구해 저장 > heatmap으로 보여주기

jfdf.plot(kind='bar', figsize=(18,6), 
          title="Things to look for while considering Data Science Jobs")
plt.xticks(rotation=60, ha='right')
plt.show()

가장 고려할 요소는 배울수 있는곳인지, 근무환경, 언어, 프레임워크나 언어, 급여, 경영상태, 경력정도 순

 

Q12. 데이터 사이언티스트가 되기 위해 학위가 중요할까요?

sns.countplot(y='UniversityImportance', data=mcq)

매우 중요하다가 가장 높음

+ 연령대별 그래프 보기 (plotly.offline, plotly.figure_factory in Jupyter notebook)

 

Q13. 어디서부터 데이터 사이언스를 시작해야 할까요?

mcq[mcq['FirstTrainingSelect'].notnull()].shape
#(14712, 228)

sns.countplot(y='FirstTrainingSelect', data=mcq)

온라인 코스 > 독학 > 대학 코스 순

 

Q14. 데이터사이언티스트 이력서에서 가장 중요한 것은 무엇일까요?

sns.countplot(y='ProveKnowledgeSelect', data=mcq)

머신러닝과 관련 된 직무경험 > 캐글 경진대회 결과 > 온라인 강좌 수료증 > 깃헙 포트폴리오 순

 

Q15. 머신러닝 알고리즘을 사용하기 위해 수학이 필요할까요?

# 설문내용과 누구에게 물어봤는지를 찾아봄
qc = question.loc[question[
    'Column'].str.contains('AlgorithmUnderstandingLevel')]
qc.Question

#227    At which level do you understand the mathemati...
#Name: Question, dtype: object

mcq[mcq['AlgorithmUnderstandingLevel'].notnull()].shape
#(7410, 228)
sns.countplot(y='AlgorithmUnderstandingLevel', data=mcq)

 

Q16. 어디에서 일을 찾아야 할까요?

# 설문내용과 누구에게 물어봤는지를 찾아봄
question.loc[question[
    'Column'].str.contains(
    'JobSearchResource|EmployerSearchMethod')]

plt.title("Best Places to look for a Data Science Job")
sns.countplot(y='JobSearchResource', data=mcq)

plt.title("Top Places to get Data Science Jobs")
sns.countplot(y='EmployerSearchMethod', data=mcq)

# 한국사람들만 비교

korea = mcq.loc[(mcq['Country']=='South Korea')]
plt.title("Best Places to look for a Data Science Job")
sns.countplot(y='JobSearchResource', data=korea)

 

plt.title("Top Places to get Data Science Jobs")
sns.countplot(y='EmployerSearchMethod', data=korea)

 

728x90