방송통신대학교 2022년 2학기 중간 출석 수업 과제물 파이썬과R 30점 만점
본 자료는 5페이지 의 미리보기를 제공합니다. 이미지를 클릭하여 주세요.
닫기
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
해당 자료는 5페이지 까지만 미리보기를 제공합니다.
5페이지 이후부터 다운로드 후 확인할 수 있습니다.

소개글

방송통신대학교 2022년 2학기 중간 출석 수업 과제물 파이썬과R 30점 만점에 대한 보고서 자료입니다.

본문내용

하시오.
■ Python 화면
8. 주당 근무시간이 40시간 이내면 시간당 임금이 1만원이고 40시간이 초과되는 부분에 대해서는 1.5배를 지급하는 경우 주당 근무시간을 입력받으며 출력으로 임금이 계산되는 함수 mywage를 를 R로 작성하시오. (이때 출력은 list 함수)
■ R 화면
9.다음은 R에서 example 함수분을 만들고 실행한 예이다. 파이썬에서 이와 같은 기능을 실행하는 클래스를 만들고, 실행결과를 보이시오.
■ Python 화면
파이썬에서 클래스 이름은 대문자를 사용하는 것이 관례이므로 example 이라는 클래스를 생성했다. 함수명이 __init__이면 클래스로 객체를 생성할 때 가장 먼저 실ㄴ행되는 초기화 즉 생성자라는 의미가 된다. 이때 self는 파이썬에서 생성된 객체를 관계적으로 가리키는 키워드이다. C++의 this 키워드와 유사하다고 볼 수 있다. 객체 생성 시 인자로 전달받은 name은 생성된 객체의 속성 a와 b의 값을 초기화하는데 사용된다.
3. 교재 연습문제 8장(p. 268) - 2번 (배점 12점)
※ 8장 연습문제는 R과 파이썬을 각각 이용하여 작업하기 바람.
2. 다음 자료는 1985년 USDA의 여성 영양 관련 자료이다. 20~50세의 연령에서 랜덤하게 선택된 737명의 여성 영양자료로서 변수는 다음과 같다.
nutrient2
id
Calcium
Iron
Protein
Vit. A
Vit. C
1
522.29
10.188
42.561
349.13
54.141
2
343.32
4.113
67.793
266.99
24.839
3
858.26
13.741
59.933
667.9
155.455
4
575.98
13.245
42.215
792.23
224.688
<참고> https://online.stat.psu.edu/stat505/lesson/1/1.4
(1) 자료에서 결측치는 0으로 표시되어 있다. 결측지를 제거하는 명령을 쓰고, 각 변수에 결측치가 몇 개 있는지 구하시오.
■ R 화면
전체 데이터에서 함수 sum(is.na(nutrient)) 를 사용하여 결측치를 확인한다 (23개). 각 변수별로 결측지가 몇 개인지는 함수 sum(is.na(nutrient$각변수이름))를 사용하여 확인한다. 함수 colSums(is.na(nutrient[,-c(1)]))를 사용하여 각 변수별 결측치가 몇 개인지 확인 할 수 있는데 각 calcium 4개, iron 2개, protein 1개, vitaminA 9개, vitaminC 7개이다. 마지막으로 함수 na.omit(nutrient)를 사용하여 결측치가 있는 행을 삭제한 결과를 볼 수이다.
■ Python 화면
info 함수를 사용하여 각 변수별로 빈셀이 아닌 셀(Non-Null Count)의 개수를 확인한다. 전제 행보다 빈셀이 아닌 셀이 적다면 결측치가 있는 것으로 확인한다. isnull 함수는 결측값을 True로 결측값이 아닌 값을 False로 반환한다. sum함수를 덧붙여 사용하면 각 칼럼마다 결측치의 합이 몇 개인지 확인한다. 각 변수별 개수는 calcium 4개, iron 2개, protein 1개, vitaminA 9개, vitaminC 7개이다. 참고로 isnull 함수와 반대로 작동하는 함수가 있는데 그것은 \'notnull, notnae 함수이다. 즉, 결측값을 False로 결촉이 아닌 값을 True로 반환한다는 말이다. 이 역시 \'sume 함수를 덧붙여서 변수별로 결측값을 한 눈에 확인할 수 있다. 명령어 dropna(how=\"any\")를 통해 결측 값이 있는 행을 제거한다.
(2) 변수(calcium, iron, protein, vitamin A, vitamin C)의 (평균, 표준편차, 최솟값, 최댓값, 중앙값, 제1사분위수, 제3사분위수)를 구하시오.
■ R 화면
summary()함수를 활용으로 calcium, iron, protein, vitaminA, vitaminC 최소값, 1사분위수, 중앙값 평균 3사분위수, 최대값을 확인할 수 있다. summary() 함수는 표준편차를 제공하지 않기 때문에 salppy() 함수를 활용하여 별도로 각 변수의 표준편차를 확인한다. na.rm=TRUE 을 통해 결측지(missing value)를 제거한 상태에서 계산하였다.
■ Python 화면
R프로그램의 summary 함수와 유사한 describes 함수를 통해서 모든 변수에 대한 기술통계량을 출력한다. describe 함수는 빈도수(count), 표준편차(std)도 함께 출력해 준다.
데이터에 컬럼의 수가 많을 경우 중간에 있는 변수(컬럼)들의 내용이 \'...\'으로 생략되어 확인하기 어려울때는 개별변수의 기술통계량을 확인하고 싶을때는 nutrient[\"변수\"].describes() 명령어를 사용할 수 있다.
(3)변수 (calcium, iron, protein, vitamin A, vitamin C) 의 상자그림 및 히스토그램을 그리고, 각 변수의 분포를 설명하시오.
■ R 화면
명령어 boxplot()로 상자 그림과 명령어 hist()로 히스토그램을 표현하하였다. 상자그림과 히스토그램을 통해 각 변수의 자료분포가 어떻게 되어 있는지를 한 눈에 알아 볼 수 있다. 상자그림에 따르면, 전체 변수(calcium, iron, protein, vitaminA, vitaminC) 들 중에서 vitaminA가 가장 분포가 작아 보이지만, 히스토그램에서는 대체로 꼬리가 긴 형태인 것을 볼 수 있다. calcium, iron, protein, vitaminC는 한곳에 집중 된곳을 제외하고 골고루 퍼져있는 것처럼 보이는데 vitaminA의 경우 0~5000 사이에 거의 모든 값이 집중적으로 들려있다.
■ Python 화면
파이썬에서 상자그림은 seabom모듈의 boxplot함수를 활용하고, 그래프의 바탕에 격자를 표현하기 위해 명령어 sns.set(style=\"whitegrid\")를 사용했다.
히스토그램은 import matplotlib.pyplot as plt 모듈의 hist 함수를 활용했다. 상자그림과 히스토그램을 통한 각 변수의 분포의 결과는 R-Studio와 동일하다.

키워드

  • 가격17,000
  • 페이지수16페이지
  • 등록일2022.11.07
  • 저작시기2022.10
  • 파일형식한글(hwp)
  • 자료번호#1189431
본 자료는 최근 2주간 다운받은 회원이 없습니다.
청소해
다운로드 장바구니