DS qiyalik va kesishma


ULASHISH

Qiyalik va kesishma nuqtasi

Endi funksiyamizning qiyaligi va kesishma nuqtasini qanday topganimizni tushuntiramiz:

f(x) = 2x + 80

Quyidagi rasmda qiyalik (Slope) — chiziq qanchalik tik ekanini ko‘rsatadi — va kesishma nuqtasi (Intercept) — x = 0 bo‘lgandagi y ning qiymati (diagonal chiziq vertikal o‘qni kesib o‘tadigan nuqta) ko‘rsatilgan. Qizil chiziq — oldingi sahifadagi ko‘k chiziqning davomi.

Linear function

Qiyalikni topish

Qiyalik o‘rtacha puls bittaga oshganda sarflangan kaloriya qanchaga oshishi sifatida aniqlanadi. U diagonal chiziq qanchalik "tik" ekanini bildiradi.

Qiyalikni grafikdagi ikki nuqtaning proporsional farqi yordamida topishimiz mumkin.

  • Agar o‘rtacha puls 80 bo‘lsa, sarflangan kaloriya 240 ga teng
  • Agar o‘rtacha puls 90 bo‘lsa, sarflangan kaloriya 260 ga teng

Ko‘rib turganingizdek, o‘rtacha puls 10 ga oshsa, sarflangan kaloriya 20 ga oshadi.

Slope = 20/10 = 2

Qiyalik 2 ga teng.

Matematik jihatdan qiyalik quyidagicha aniqlanadi:

Slope = f(x2) - f(x1) / x2-x1

f(x2) = Calorie_Burnage’ning ikkinchi kuzatuvi = 260
f(x1) = Calorie_Burnage’ning birinchi kuzatuvi = 240
x2 = Average_Pulse’ning ikkinchi kuzatuvi = 90
x1 = Average_Pulse’ning birinchi kuzatuvi = 80

Slope = (260-240) / (90 - 80) = 2

Kuzatuvlarni to‘g‘ri tartibda belgilashda izchil bo‘ling! Aks holda bashorat to‘g‘ri chiqmaydi!

Qiyalikni Python yordamida topish

Qiyalikni quyidagi kod bilan hisoblang:

Misol

def slope(x1, y1, x2, y2):   s = (y2-y1)/(x2-x1)   return s print (slope(80,240,90,260))
O‘zingiz sinab ko‘ring »

Kesishma nuqtasini topish

Kesishma nuqtasi funksiyaning Calorie_Burnage’ni bashorat qilish qobiliyatini aniq sozlash uchun ishlatiladi.

Kesishma nuqtasi — diagonal chiziq to‘liq chizilganda y o‘qini kesib o‘tadigan nuqta.

Kesishma nuqtasi — x = 0 bo‘lgandagi y ning qiymati.

Bu yerda ko‘rib turibmizki, agar o‘rtacha puls (x) nolga teng bo‘lsa, sarflangan kaloriya (y) 80 ga teng.

Demak, kesishma nuqtasi 80 ga teng.

Ba’zan kesishma nuqtasi amaliy ma’noga ega bo‘ladi, ba’zan esa yo‘q.

O‘rtacha pulsning nolga teng bo‘lishi mantiqqa to‘g‘ri keladimi?

Yo‘q, bunday holatda siz o‘lgan bo‘lar edingiz va, albatta, hech qanday kaloriya sarflamas edingiz.

Biroq matematik funksiya Calorie_Burnage’ni to‘g‘ri bashorat qila olishi uchun kesishma nuqtasini ham kiritishimiz kerak.

Matematik funksiyaning kesishma nuqtasi amaliy ma’noga ega bo‘lishi mumkin bo‘lgan boshqa misollar:

  • Marketing xarajatlari yordamida keyingi yilgi daromadni bashorat qilish (agar marketing xarajatlari nolga teng bo‘lsa, keyingi yili qancha daromad olamiz?). Kompaniya marketingga pul sarflamasa ham, baribir qandaydir daromad oladi, deb taxmin qilish mumkin.
  • Tezlikka bog‘liq yoqilg‘i sarfi (tezlik 0 mil/soat bo‘lganda qancha yoqilg‘i sarflaymiz?). Benzinda yuradigan avtomobil salt ishlab turganda ham yoqilg‘i sarflaydi.


Python yordamida qiyalik va kesishma nuqtasini topish

np.polyfit() funksiyasi qiyalik va kesishma nuqtasini qaytaradi.

Quyidagi kod bilan davom etsak, funksiyadan ham qiyalikni, ham kesishma nuqtasini olishimiz mumkin.

Misol

import pandas as pd import numpy as np health_data = pd.read_csv("data.csv", header=0, sep=",") x = health_data["Average_Pulse"] y = health_data["Calorie_Burnage"] slope_intercept = np.polyfit(x,y,1) print(slope_intercept)
O‘zingiz sinab ko‘ring »

Misol izohi:

  • health_data’dan Average_Pulse (x) va Calorie_Burnage (y) o‘zgaruvchilarini ajratib oling.
  • np.polyfit() funksiyasini chaqiring.
  • Funksiyaning oxirgi parametri funksiya darajasini belgilaydi, bu holatda u "1" ga teng.

Maslahat: chiziqli funksiyalar = 1-darajali funksiya. Bizning misolimizda funksiya chiziqli, ya’ni 1-darajali. Bu barcha koeffitsiyentlar (sonlar) birinchi darajada ekanini anglatadi.

Endi biz qiyalik (2) va kesishma nuqtasini (80) hisoblab chiqdik. Matematik funksiyani quyidagicha yozishimiz mumkin:

Calorie_Burnage’ni matematik ifoda yordamida bashorat qiling:

f(x) = 2x + 80

Topshiriq:

Endi o‘rtacha puls 135 bo‘lganda sarflangan kaloriyani bashorat qilmoqchimiz.

Kesishma nuqtasi konstanta ekanini unutmang. Konstanta — o‘zgarmaydigan son.

Endi kiruvchi x qiymatini 135 bilan almashtirishimiz mumkin:

f(135) = 2 * 135 + 80 = 350

Agar o‘rtacha puls 135 bo‘lsa, sarflangan kaloriya 350 ga teng.


Matematik funksiyani Pythonda aniqlash

Mana aynan o‘sha matematik funksiya, faqat Pythonda. Funksiya x kiruvchi qiymat bo‘lganda 2*x + 80 ni qaytaradi:

Misol

def my_function(x):   return 2*x + 80 print (my_function(135))
O‘zingiz sinab ko‘ring »

x ni 140 va 150 bilan almashtirib ko‘ring.


Pythonda yangi grafik chizish

Bu yerda avvalgi grafikning o‘zini chizamiz, lekin o‘qlarni biroz formatlaymiz.

Endi y o‘qining maksimal qiymati 400, x o‘qiniki esa 150:

Misol

import matplotlib.pyplot as plt health_data.plot(x ='Average_Pulse', y='Calorie_Burnage', kind='line'), plt.ylim(ymin=0, ymax=400) plt.xlim(xmin=0, xmax=150) plt.show()
O‘zingiz sinab ko‘ring »

Misol izohi

  • matplotlib kutubxonasining pyplot modulini import qiling
  • Average_Pulse ma’lumotlarini Calorie_Burnage’ga nisbatan grafikda tasvirlang
  • kind='line' qanday turdagi grafik kerakligini bildiradi. Bu yerda bizga to‘g‘ri chiziq kerak
  • plt.ylim() va plt.xlim() o‘q qaysi qiymatdan boshlanib, qaysi qiymatda tugashini belgilaydi.
  • plt.show() natijani ko‘rsatadi

W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!