Python tính độ dốc giữa hai điểm

Sử dụng công thức hệ số góc để tìm hệ số góc của một đường thẳng khi biết tọa độ của hai điểm trên đường thẳng. Công thức hệ số góc là m=[y2-y1]/[x2-x1] hoặc thay đổi của giá trị y so với thay đổi của giá trị x. Tọa độ của điểm đầu tiên đại diện cho x1 và y1. Tọa độ của các điểm thứ hai là x2, y2. Không quan trọng điểm nào bạn dán nhãn là điểm đầu tiên và điểm nào bạn dán nhãn là điểm thứ hai. Đừng quên bao gồm các dấu hiệu chính xác của mỗi giá trị. Đơn giản hóa để có được giá trị của độ dốc. Kiểm tra câu trả lời của bạn bằng cách vẽ đồ thị các điểm và xác minh rằng khoảng cách thẳng đứng giữa hai điểm và khoảng cách ngang giữa hai điểm được xác định bởi tử số và mẫu số của hệ số góc

Đây là bài toán cho tôi hai điểm và yêu cầu tôi tìm hệ số góc của đường nối chúng. Vì vậy, nếu tôi muốn, tôi có thể vẽ biểu đồ, nhưng thành thật mà nói với các bạn, tôi không thực sự thích vẽ đồ thị cho lắm. Mất rất nhiều thời gian, tôi không phải lúc nào cũng có giấy kẻ ô vuông, vì vậy đây là một phím tắt Đại số mà tôi thích sử dụng, và đó là sử dụng công thức tính hệ số góc. Các bạn nên ghi nhớ điều này, nếu chưa, hãy bắt đầu ghi nhớ

M là viết tắt của độ dốc, và bạn thực hiện y2 lấy đi y1 trên x2 lấy đi x1. Vì vậy, để áp dụng công thức này, điều đầu tiên tôi cần làm là tìm ra ý nghĩa của hoạt động kinh doanh y2, y1 này. Tôi sẽ tiếp tục và đặt tên cho những điểm này là x1 nghĩa là tọa độ x đầu tiên của tôi, y1 là tọa độ y đầu tiên của tôi, x2 sẽ là 4 và y2 sẽ là 1

Sau đó, tôi sẽ thay thế từng con số này vào công thức đó. Vì vậy, hãy xem y2 là 1 lấy đi y1, đây rồi, đó là đỉnh của phân số của tôi. Đáy sắp x2 lấy đi x1. Trời ơi hãy cẩn thận với dấu âm. Lưu ý cách tôi có một dấu trừ, âm, một dấu trừ đến từ phương trình và dấu trừ khác đến từ số 3 ngay tại đó, đó là lý do tại sao tôi có dấu trừ, dấu trừ

Được rồi, hãy đơn giản hóa điều đó. 1 lấy đi 2 là -1, ở dưới cùng tôi có 4 trừ -3 bằng với 4 cộng 3 là 7, thế là xong. Sử dụng Đại số, tôi có thể tìm hệ số góc của đường thẳng chứa hai điểm đó mà không cần phải vẽ đồ thị, tôi thích cách làm tắt đó. Trước khi chúng ta tiếp tục, tôi muốn cho các bạn xem một bản phác thảo nhanh về biểu đồ có thể giúp bạn kiểm tra công việc của mình. Chẳng hạn như giả sử tôi thử vẽ đồ thị những điểm này, tôi sẽ xác minh rằng -1/7 có ý nghĩa

Xem nào, vậy điểm đầu tiên của tôi là [-3,2], [-3,2] đâu đó một vòng ở đó, điểm thứ hai của tôi là 4, 1 một, hai, ba, bốn, một và tôi đang nhìn vào đường thẳng . Một lần nữa, cái này không đẹp lắm vì tôi không sử dụng giấy kẻ ô vuông, nhưng tôi đang đi xuống 1 ô và hơn 7 ô. Nếu các bạn có giấy vẽ đồ thị, bạn sẽ có cái này chính xác hơn rất nhiều và bạn có thể thấy rằng độ dốc thực sự của tôi là, trời ơi xin lỗi, đây giống như bức tranh xấu nhất, nhưng tôi hy vọng các bạn vẫn có thể hiểu được. Độ dốc của tôi là xuống 1, trên 7, đó là số âm biểu thị cho hướng xuống, và sau đó là tất cả trên 7

Vì vậy, vẽ đồ thị là một cách tốt để kiểm tra, nó thực sự có thể thô sơ như thế này chỉ để đảm bảo rằng tôi không vô tình đặt dấu X lên trên hoặc thứ gì đó tương tự, và tôi không vô tình mắc một số lỗi tính toán kỳ lạ, nhưng một điều nữa là tôi

Chào mừng bạn đến với phần thứ 8 của hướng dẫn hồi quy máy học trong loạt bài hướng dẫn Học máy với Python của chúng tôi. Ở nơi chúng tôi dừng lại, chúng tôi vừa nhận ra rằng chúng tôi cần sao chép một số thuật toán không tầm thường vào mã Python để cố gắng tính toán một dòng phù hợp nhất cho một tập dữ liệu nhất định

Trước khi chúng ta bắt tay vào việc đó, tại sao chúng ta lại bận tâm đến tất cả những điều này? . Nó được sử dụng trong hầu hết mọi thuật toán machine learning chính, vì vậy hiểu biết về nó sẽ giúp bạn có được nền tảng cho hầu hết các thuật toán machine learning chính. Đối với những người nhiệt tình trong chúng ta, việc hiểu về hồi quy tuyến tính và đại số tuyến tính tổng quát là bước đầu tiên hướng tới việc viết các thuật toán học máy tùy chỉnh của riêng bạn và mở rộng sang lĩnh vực mới nhất của học máy, sử dụng phương pháp xử lý tốt nhất vào thời điểm đó. Khi quá trình xử lý được cải thiện và kiến ​​trúc phần cứng thay đổi, các phương pháp được sử dụng cho máy học cũng thay đổi. Sự gia tăng gần đây của các mạng thần kinh có liên quan nhiều đến các đơn vị xử lý đồ họa đa năng. Bạn đã bao giờ tự hỏi điều gì nằm ở trung tâm của mạng lưới thần kinh nhân tạo chưa? . hồi quy tuyến tính

Nếu bạn còn nhớ, phép tính độ dốc của đường phù hợp nhất/hồi quy/'y-hat',

xs = [1,2,3,4,5]
ys = [5,4,6,5,6]
9

Được rồi, chúng ta sẽ chia nó thành nhiều phần. Trước tiên, hãy lấy một vài hàng nhập khẩu

from statistics import mean
import numpy as np

Chúng tôi đang nhập

xs = [1,2,3,4,5]
ys = [5,4,6,5,6]
0 từ số liệu thống kê để có thể dễ dàng lấy giá trị trung bình của danh sách hoặc mảng. Tiếp theo, chúng tôi lấy
xs = [1,2,3,4,5]
ys = [5,4,6,5,6]
1 để chúng tôi có thể tạo các mảng NumPy. Chúng tôi có thể làm được nhiều việc với các danh sách, nhưng chúng tôi cần có khả năng thực hiện một số thao tác ma trận đơn giản, vốn không khả dụng với các danh sách đơn giản, vì vậy chúng tôi sẽ sử dụng NumPy. Chúng tôi sẽ không trở nên quá phức tạp ở giai đoạn này với NumPy, nhưng sau này NumPy sẽ là người bạn tốt nhất của bạn. Tiếp theo, hãy xác định một số điểm dữ liệu bắt đầu

xs = [1,2,3,4,5]
ys = [5,4,6,5,6]

Vì vậy, đây là những điểm dữ liệu chúng tôi sẽ sử dụng, xs và ys. Bạn có thể đã đóng khung điều này ngay bây giờ vì xs là các tính năng và ys là các nhãn hoặc có thể đây là cả hai tính năng và chúng tôi đang thiết lập mối quan hệ. Như đã đề cập trước đó, chúng tôi thực sự muốn đây là các mảng NumPy để chúng tôi có thể thực hiện các phép toán ma trận, vì vậy hãy sửa đổi hai dòng đó

xs = np.array[[1,2,3,4,5], dtype=np.float64]
ys = np.array[[5,4,6,5,6], dtype=np.float64]

Bây giờ đây là những mảng numpy. Chúng tôi cũng rõ ràng với kiểu dữ liệu ở đây. Không đi sâu vào đây, các kiểu dữ liệu có một số thuộc tính nhất định và các thuộc tính đó tóm tắt cách dữ liệu được lưu trữ vào bộ nhớ và có thể được thao tác. Điều này sẽ không quan trọng ngay bây giờ vì nó sẽ xảy ra khi nào và nếu chúng tôi đang thực hiện các hoạt động lớn và hy vọng thực hiện chúng trên GPU của chúng tôi thay vì CPU

Nếu được vẽ biểu đồ, dữ liệu của chúng ta sẽ giống như

Được rồi, bây giờ chúng ta đã sẵn sàng xây dựng một hàm để tính toán

xs = [1,2,3,4,5]
ys = [5,4,6,5,6]
9, đây là độ dốc của đường hồi quy của chúng ta

def best_fit_slope[xs,ys]:
    return m

m = best_fit_slope[xs,ys]

Xong

Đùa thôi, vậy là có bộ xương của chúng ta, bây giờ chúng ta sẽ điền vào

Thứ tự kinh doanh đầu tiên của chúng tôi là lấy giá trị trung bình của điểm x, nhân với giá trị trung bình của điểm y của chúng tôi. Tiếp tục điền vào bộ xương của chúng tôi

def best_fit_slope[xs,ys]:
    m = [mean[xs] * mean[ys]]
    return m

Đủ dễ dàng cho đến nay. Bạn có thể sử dụng hàm

xs = [1,2,3,4,5]
ys = [5,4,6,5,6]
0 trên danh sách, bộ dữ liệu hoặc mảng. Lưu ý việc sử dụng dấu ngoặc đơn của tôi ở đây. Python tôn vinh thứ tự các hoạt động với toán học. Vì vậy, nếu bạn muốn đảm bảo trật tự, hãy chắc chắn rằng bạn rõ ràng. Ghi nhớ PEMDAS của bạn

Tiếp theo, chúng ta cần trừ giá trị trung bình của x*y, đây sẽ là phép toán ma trận của chúng ta.

xs = [1,2,3,4,5]
ys = [5,4,6,5,6]
4. đầy đủ ngay bây giờ

def best_fit_slope[xs,ys]:
    m = [ [mean[xs]*mean[ys]] - mean[xs*ys] ]
    return m

Chúng ta đã hoàn thành phần trên cùng của phương trình, bây giờ chúng ta sẽ làm việc với mẫu số, bắt đầu với giá trị trung bình bình phương của x.

xs = [1,2,3,4,5]
ys = [5,4,6,5,6]
5. Mặc dù Python không hỗ trợ thứ gì đó như
xs = [1,2,3,4,5]
ys = [5,4,6,5,6]
6, nhưng nó sẽ không hoạt động trên kiểu dữ liệu float64 mảng NumPy của chúng tôi. Thêm cái này vào

xs = [1,2,3,4,5]
ys = [5,4,6,5,6]
2

Mặc dù thứ tự các phép toán không cần thiết phải đặt toàn bộ phép tính trong ngoặc đơn, nhưng tôi đang thực hiện ở đây để có thể thêm một dòng mới sau phép chia của chúng ta, giúp mọi thứ dễ đọc và dễ theo dõi hơn một chút. Không có nó, chúng tôi sẽ gặp lỗi cú pháp ở dòng mới. Chúng ta gần như đã hoàn thành ở đây, bây giờ chúng ta chỉ cần trừ giá trị trung bình của các giá trị x bình phương.

xs = [1,2,3,4,5]
ys = [5,4,6,5,6]
7. Một lần nữa, chúng ta không thể thoát khỏi một củ cà rốt 2 đơn giản, nhưng chúng ta có thể tự nhân nhiều mảng và nhận được kết quả tương tự mà chúng ta mong muốn. Tất cả cùng nhau bây giờ

xs = [1,2,3,4,5]
ys = [5,4,6,5,6]
4

Tuyệt vời, kịch bản đầy đủ của chúng tôi bây giờ là

xs = [1,2,3,4,5]
ys = [5,4,6,5,6]
5

đầu ra.

xs = [1,2,3,4,5]
ys = [5,4,6,5,6]
8

Cái gì tiếp theo? .

xs = [1,2,3,4,5]
ys = [5,4,6,5,6]
9. Chúng tôi sẽ giải quyết vấn đề đó trong hướng dẫn tiếp theo cùng với việc hoàn thành tổng thể phép tính đường phù hợp nhất. Đó là một phép tính dễ dàng hơn so với độ dốc, hãy thử viết hàm của riêng bạn để thực hiện. Nếu bạn hiểu, đừng bỏ qua phần hướng dẫn tiếp theo, vì chúng ta sẽ làm nhiều việc hơn là chỉ tính toán
xs = [1,2,3,4,5]
ys = [5,4,6,5,6]
9

Làm cách nào để tìm độ dốc trong Python?

Tìm Độ dốc và Chặn bằng Python . The np. hàm polyfit[] trả về hệ số góc và tung độ .

Làm thế nào để tính toán một độ dốc?

Sử dụng phương trình độ dốc .
Chọn hai điểm trên đoạn thẳng và xác định tọa độ của chúng
Xác định sự khác biệt về tọa độ y của hai điểm này [tăng]
Xác định sự khác biệt về tọa độ x cho hai điểm này [chạy]
Chia sự khác biệt trong tọa độ y cho sự khác biệt trong tọa độ x [tăng/chạy hoặc dốc]

Chủ Đề