시작하기무료로 시작하기

선형 회귀

여성 문맹률에 따라 출산율이 선형 함수라고 가정해 보겠습니다. 즉, $f = a i + b$이며, 여기서 $a$는 기울기, $b$는 절편입니다. 절편은 최소 출산율로 볼 수 있으며, 대략 1과 2 사이일 가능성이 큽니다. 기울기는 문맹률이 변할 때 출산율이 어떻게 달라지는지를 알려 줘요. np.polyfit()을 사용하여 최적의 직선을 찾을 수 있습니다.

데이터와 최적 적합선을 함께 그려 보세요. 또한 기울기와 절편을 출력하세요. (생각해 봅시다: 단위는 무엇일까요?)

이 연습은 강의의 일부입니다

Python으로 하는 통계적 사고 (2부)

강의 보기

연습 안내

  • np.polyfit()을 사용해 회귀선의 기울기와 절편을 구하세요. fertility가 y축, illiteracy가 x축임을 기억하세요.
  • 선형 회귀에서 구한 기울기와 절편을 출력하세요.
  • 최적 적합선을 그리려면 np.array()로 0과 100으로 이루어진 배열 x를 만든 뒤, 회귀 계수에 따라 이론적인 y 값을 계산하세요. 즉, y = a * x + b입니다.
  • 같은 그래프에 데이터와 회귀선을 함께 그리세요. 축 라벨을 잊지 마세요.
  • 완료되면 제출을 눌러 그래프를 확인하세요.

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

# Plot the illiteracy rate versus fertility
_ = plt.plot(illiteracy, fertility, marker='.', linestyle='none')
plt.margins(0.02)
_ = plt.xlabel('percent illiterate')
_ = plt.ylabel('fertility')

# Perform a linear regression using np.polyfit(): a, b
a, b = ____

# Print the results to the screen
print('slope =', a, 'children per woman / percent illiterate')
print('intercept =', b, 'children per woman')

# Make theoretical line to plot
x = ____
y = ____ * ____ + ____

# Add regression line to your plot
_ = plt.plot(____, ____)

# Draw the plot
plt.show()
코드 편집 및 실행