5. PYTHON과 COLAB 시작하기
5. PYTHON과 COLAB 시작하기
입력 파일 불러오기 기초
Colab의 장점을 살려 구글 드라이브에 저장해 둔 입력 파일을 불러와서 작업을 해보자.
보통 csv 파일을 입력자료 파일형식으로 사용하는데, 각데이터를 콤마(,)로 구분하는 파일 형식으로 과학데이터나 빅데이터 자료의 형식으로 쓰인다. 여러 다른 형식의 데이타 파일인 경우 엑셀등을 이용하여 csv 파일로 변환하여 저장할 수 있다.
데이터 사용자는 분석 목적에 적합한 데이터를 우선 선정해야 하고, 준비된 데이터가 포함된 파일의 구조와 상태를 정확히 이해하고 있어야 한다.
예시로 fitness.csv 를 사용해 보았다. 이 파일은 94명 학생의 체력측정치가 정리된 파일이다. 코딩을 하기전에 자신의 구글 드라이브에 준비한 입력 파일을 두고 위치를 확인합니다.
1. Step 1. 에 따라 작성해 보자.
구글드라이브를 마운트하여 파일을 불러 들이는 과정입니다.
2. 실행을 하면 파란색 링크가 나타난다. 링크를 클릭한다.
3. 계정을 선택한다.
아래 오른쪽 그림의 창이 나타나면 맨 아래 접속에 대한 승인을 클릭한다.
4. 데이터가 있는 드라이브 위치의 URL 을 복사한다.
5. colab으로 돌아와 복사한 URL 을 빈 칸에 붙여 넣으면 된다.
6. 이제 드라이브 마운트가 완료 되었다.
7. Step 1. 에 따라 작성해 보자.
import 명령어로 수치 분석과 시각화에 사용되는 라이브러리를 불러 온다.
8. 파일을 불러 와서 파일의 헤더를 확인하도록 작성후 실행하여 결과를 확인한다.
afitness.csv 파일은 학년과 성별, 키, 몸무게 등의 정보가 있다.
Shape 으로 94명 학생을 대상으로 8개 항목의 검사 결과가 포함되었음을 확인할 수 있다.
9. 산포도(Scatter Plot)은 2개의 연속형 변수 간의 관계를 보기 위해 직교 좌표 평면에 각 측정값을 점으로 나타내어 분포와 경향으로 부터 두 관측값의 관계를 확인하는데 효과적으로 사용이 된다.
10. 3차원 산점도는 3개의 변인사이의 관계를 나타내며 세 관측값의 관계를 확인하는데 효과적으로 사용이 된다. 키, 몸무게, 힙까지의 신장의 상관관계를 나타내고 있다.
아래 코드를 따라 작성하여 실행해보자. 각 축의 값을 데이터의 다른 항목으로 바꾸어서 비교해보고 각 변인 사이의 상관 관계성을 확인해 보자. 타 변인들과 동떨어진 값들이 있다면 데이터를 다시 한번 살펴보고 문제가 없다면 그러한 결과의 원인에 대해 유추하고 재확인하는 과정을 수행해보자.
11.히스토그램
히스토그램은 막대 그래프의 한 유형으로 확률 분포의 그래픽 표현이다.
막대그래프와의 차이점은 변수가 간격에 따라 연속적으로 표시 된다. 값의 간격은 일반적으로 X축에 표시하고 빈도 값은 Y축에 표시한다.
막대그래프는 확률분포와 관련이 있으므로 통계요소를 표시하는데 자주 사용이 된다. 간단한 히스토그램 함수로 plt.hist 를 이용하면 되고 X 갑의 간격을 10개로 두면 plt.hist(X, bins = 10) 로 간단히 나타낼 수 있다.
변인과 막대의 색을 달리하여 나타낸 예시이다.
12. 사진, 이미지 파일 불러 오기
Matplotlib.pyplot 과 matplotlib.image 라이브러리를 이용하여 사진이나 이미지를 불러와서 값을 확인해보자.
일반적으로 색을 갖고 있는 사진등은 3색의 값을 포함하여 분해능에 해당하는 2차원 영상 x, y로 대변되는 위치의 값과 R, G, V 등의 3색에 대한 0-255 범위의 값을 갖고 있다.
아래의 예시를 통해 저장된 이미지 파일을 불러보고 포함된 자료의 형식을 확인해보자.
NASA 에서 제공하는 성단과 달의 사진을 폴더에 저장해 두고 불러왔다.
13. 사진, 이미지 파일 불러 오기
데이터의 값은 정성적 자료일 수도 있다. 많은 양의 문서 자료를 대상으로 한 데이터 사이언스와 가시화 중에 워드클라우드가 있다.
워드클라우드를 통해 많은 단어들 중 자주 언급되는 빈도에 따라 중요도를 부여하여 시각화 할수 있다. 또는 특정순서를 선언하여 글자 크기나 색상에 변화를 주어 직관적으로 분석된 결과를 보여 줄 수 있다.
많이 언급되거나 중요한 기준에 의해 핵심단어의 순서에 따라 크기나 진하기를 달리하여 돋보이게 한다. 워드클라우드를 통해 더 많은 텍스트 테이터, 특히 키워드가 얼마나 중요한지강조해 보자.
* 사진이나 문서파일을 미리 다운받아 드라이브에 저장하고 불러와 보도록 하자.
질문) 코딩을 이용해 보다 쉽게 해결할 수 있는 문제로 어떤 것이 있을까?
천문 교육 활동 교재 [ 박찬경, 손정주, 송인옥, 심현진 공저 ]