Hướng dẫn how error bars are calculated python? - làm thế nào các thanh lỗi được tính toán python?


Thường thì bạn có thể quan tâm đến việc thêm & nbsp; thanh lỗi & nbsp; để biểu đồ trong Python để nắm bắt độ không đảm bảo xung quanh các phép đo hoặc giá trị được tính toán. May mắn thay, điều này rất dễ sử dụng thư viện matplotlib.error bars to charts in Python to capture uncertainty around measurements or calculated values. Fortunately this is easy to do using the matplotlib library.

Hướng dẫn này giải thích cách thêm các thanh lỗi vào cả biểu đồ thanh và biểu đồ dòng trong Python.

Thanh lỗi trong biểu đồ thanh

Giả sử chúng ta có bộ dữ liệu sau gồm 10 giá trị trong Python:

import numpy as np
import matplotlib.pyplot as plt

#define dataset
data = [4, 6, 6, 8, 9, 14, 16, 16, 17, 20]

Để tạo biểu đồ thanh với các thanh lỗi cho bộ dữ liệu này, chúng ta có thể xác định độ rộng của các thanh lỗi là & nbsp; lỗi tiêu chuẩn, được tính toán astandard error, which is calculated a

Lỗi tiêu chuẩn = s /& nbsp; √n

where:

  • s: & nbsp; độ lệch chuẩn mẫusample standard deviation
  • n: & nbsp; cỡ mẫusample size

Mã sau đây cho thấy cách tính lỗi tiêu chuẩn cho ví dụ này:

#calculate standard error
std_error = np.std(data, ddof=1) / np.sqrt(len(data))

#view standard error 
std_error

1.78

Cuối cùng, chúng ta có thể tạo biểu đồ thanh bằng các thanh lỗi có chiều rộng bằng với lỗi tiêu chuẩn:

#define chart 
fig, ax = plt.subplots()

#create chart
ax.bar(x=np.arange(len(data)), #x-coordinates of bars
       height=data, #height of bars
       yerr=std_error, #error bar width
       capsize=4) #length of error bar caps

Hướng dẫn how error bars are calculated python? - làm thế nào các thanh lỗi được tính toán python?

Lỗi tiêu chuẩn hóa ra là & NBSP; 1.78. Đây là chiều rộng của thanh lỗi mở rộng theo cả hai hướng từ ước tính điểm trên biểu đồ. Ví dụ: giá trị của thanh đầu tiên trong biểu đồ là 4, do đó nó có một thanh lỗi kéo dài từ:1.78. This is the width of the error bar that extends in both directions from the point estimates on the graph. For example, the value of the first bar in the chart is 4, thus it has an error bar that extends from:

  • Đầu dưới: & NBSP; 4 - 178 = & NBSP; 2.222.22
  • Đầu trên: 4 + 1.78 = & NBSP; 5.785.78

Mỗi thanh lỗi trong biểu đồ là cùng chiều rộng.

Các thanh lỗi trong biểu đồ dòng

Mã sau đây cho thấy cách tạo biểu đồ dòng với các thanh lỗi cho cùng một tập dữ liệu:

import numpy as np
import matplotlib.pyplot as plt

#define data
data = [4, 6, 6, 8, 9, 14, 16, 16, 17, 20]

#define x and y coordinates
x = np.arange(len(data))
y = data

#create line chart with error bars
fig, ax = plt.subplots()

ax.errorbar(x, y,
            yerr=std_error,
            capsize=4)

Hướng dẫn how error bars are calculated python? - làm thế nào các thanh lỗi được tính toán python?

Lưu ý rằng đối số & nbsp; yerr & nbsp; bảo Python tạo các thanh lỗi dọc. Thay vào đó, chúng tôi có thể sử dụng các thanh dọc ngang bằng cách sử dụng & nbsp; Xerr & nbsp; đối số: đối số:yerr tells Python to create vertical error bars. We could instead use horizontal vertical bars by using the xerr argument:

#create line chart with horizontal error bars
fig, ax = plt.subplots()

ax.errorbar(x, y,
            xerr=std_error,
            capsize=4)

Hướng dẫn how error bars are calculated python? - làm thế nào các thanh lỗi được tính toán python?

Bạn có thể tìm thấy nhiều hướng dẫn Python ở đây.

Hôm nay trong hướng dẫn này, chúng tôi sẽ hiểu khái niệm về các thanh lỗi và tìm hiểu cách hình dung giống nhau trong ngôn ngữ lập trình Python.

Trước tiên, hãy để tôi giới thiệu với bạn về ErrorBars trước khi nhảy vào mã.


Thanh lỗi trong Python là gì?

Trong các nghiên cứu khoa học dữ liệu, việc hiển thị các thanh lỗi trong hình ảnh của bạn là không thể tránh khỏi và rất cần thiết.

Các thanh lỗi hóa ra rất hữu ích cho những người giải quyết vấn đề để quan sát mức độ tin cậy vào các giá trị thu được dưới dạng đầu ra. Biểu đồ thanh không có thanh lỗi đưa ra ảo ảnh rằng giá trị đo hoặc tính toán được biết là có độ chính xác cao hoặc độ tin cậy cao.


Thực hiện các thanh lỗi trong Python

Bây giờ chúng ta đã biết những thanh lỗi nào là cho phép bạn học cách trực quan hóa chúng bằng các mô -đun học máy cơ bản.

1. Nhập các mô -đun

import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline
plt.style.use('seaborn')


2. Trực quan hóa các thanh lỗi trong các ô thanh

Để trực quan hóa các thanh lỗi trong các ô thanh, chúng ta phải tạo biểu đồ thanh trước. Điều tương tự cũng được thực hiện bằng cách tạo dữ liệu và vẽ biểu đồ biểu đồ thanh trước.


2.1 Tạo dữ liệu

Để tạo dữ liệu, chúng tôi sẽ lấy 3 đối tượng khác nhau. Ở đây, đối với hướng dẫn này, chúng tôi sẽ đại diện cho nhiệt độ nhiệt của ba kim loại.

aluminum = np.array([6.4e-5 , 3.01e-5 , 2.36e-5, 3.0e-5, 7.0e-5, 4.5e-5, 3.8e-5,
                     4.2e-5, 2.62e-5, 3.6e-5])
copper = np.array([4.5e-5 , 1.97e-5 , 1.6e-5, 1.97e-5, 4.0e-5, 2.4e-5, 1.9e-5, 
                   2.41e-5 , 1.85e-5, 3.3e-5 ])
steel = np.array([3.3e-5 , 1.2e-5 , 0.9e-5, 1.2e-5, 1.3e-5, 1.6e-5, 1.4e-5, 
                  1.58e-5, 1.32e-5 , 2.1e-5])

Trực quan hóa đóng vai trò chính trong bất kỳ chương trình ML nào, vì vậy, chúng ta hãy trực quan hóa dữ liệu trong một biểu đồ phân tán bằng cách sử dụng mã được đề cập dưới đây.

x_values = np.array([i for i in range(len(aluminum))])
plt.scatter(x_values,aluminum,label="Aluminium")
plt.scatter(x_values,copper,label="Copper")
plt.scatter(x_values,steel,label="Steel")
plt.title("Initial Data Visualization")
plt.legend()
plt.show()

Hướng dẫn how error bars are calculated python? - làm thế nào các thanh lỗi được tính toán python?
Lỗi trực quan ban đầu


2.2 Tính lỗi cho các thanh lỗi

Để nhận lỗi cho ErrorBars, chúng tôi yêu cầu giá trị trung bình và độ lệch chuẩn có thể được tính toán với sự trợ giúp của giá trị trung bình và STD chức năng của mảng numpy.

Mã cho cùng được hiển thị bên dưới. Chúng tôi cũng sẽ chuẩn bị dữ liệu này để vẽ bằng cách tạo một vài biến:

  1. Danh sách các Lables
  2. Danh sách chứa giá trị trung bình của từng danh mục
  3. Danh sách chứa độ lệch chuẩn của từng loại

aluminum_mean = np.mean(aluminum)
copper_mean = np.mean(copper)
steel_mean = np.mean(steel)

aluminum_std = np.std(aluminum)
copper_std = np.std(copper)
steel_std = np.std(steel)

labels = ['Aluminum', 'Copper', 'Steel']
x_pos = np.arange(len(labels))
CTEs = [aluminum_mean, copper_mean, steel_mean]
error = [aluminum_std, copper_std, steel_std]


2.3 Thanh lỗi âm mưu

Mã để vẽ các thanh lỗi được đề cập dưới đây trong đó lỗi là độ lệch chuẩn của các giá trị trong mỗi danh mục.

plt.style.use('seaborn')
fig, ax = plt.subplots()
ax.bar(x_pos, CTEs,
       yerr=error,
       align='center',
       alpha=0.2,
       color='green',
       ecolor='red',
       capsize=10)

ax.set_ylabel('Coefficient of Thermal Expansion')
ax.set_xticks(x_pos)
ax.set_xticklabels(labels)
ax.set_title('Coefficent of Thermal Expansion (CTE) of Three Metals')
ax.yaxis.grid(True)
plt.show()

Hướng dẫn how error bars are calculated python? - làm thế nào các thanh lỗi được tính toán python?
Biểu đồ thanh với các thanh lỗi


3. Trực quan hóa các thanh lỗi trong các lô hàng

Các thanh lỗi cũng có thể được thêm vào các lô dòng được tạo bằng matplotlib.

Phương thức

#calculate standard error
std_error = np.std(data, ddof=1) / np.sqrt(len(data))

#view standard error 
std_error

1.78
1 được sử dụng để tạo biểu đồ dòng với các thanh lỗi yêu cầu danh sách hoặc mảng của các điểm dữ liệu X, y.

Mã cho cùng được hiển thị bên dưới.

#calculate standard error
std_error = np.std(data, ddof=1) / np.sqrt(len(data))

#view standard error 
std_error

1.78
0

Hướng dẫn how error bars are calculated python? - làm thế nào các thanh lỗi được tính toán python?
Biểu đồ dòng với các thanh lỗi


Sự kết luận

Tôi hy vọng bạn hiểu khái niệm và yêu thích các đầu ra. Hãy thử tương tự với nhiều dữ liệu mẫu hơn. Mã hóa hạnh phúc! 😇

Muốn tìm hiểu thêm? Kiểm tra các hướng dẫn được đề cập dưới đây:

  1. Lô thanh Python - Trực quan hóa dữ liệu phân loại trong Python
  2. Python: Vẽ các đường cong mượt mà
  3. Sơ đồ dữ liệu từ bảng excel bằng Python

Các thanh lỗi được tính toán như thế nào?

Nó được sử dụng nhiều theo cùng một cách trung bình là: lỗi tiêu chuẩn được tính bằng cách chia độ lệch chuẩn cho căn bậc hai số lượng đo tạo thành giá trị trung bình (thường được biểu thị bằng n).Trong trường hợp này, 5 phép đo đã được thực hiện (n = 5) do đó độ lệch chuẩn được chia cho căn bậc hai của 5.The standard error is calculated by dividing the standard deviation by the square root of number of measurements that make up the mean (often represented by N). In this case, 5 measurements were made (N = 5) so the standard deviation is divided by the square root of 5.

Thanh lỗi dựa trên là gì?

Tóm lại, có ba số liệu thống kê phổ biến được sử dụng để phủ các thanh lỗi trên một biểu đồ đường trung bình: độ lệch chuẩn của dữ liệu, sai số tiêu chuẩn của giá trị trung bình và khoảng tin cậy 95% cho giá trị trung bình.Các thanh lỗi truyền tải sự thay đổi trong dữ liệu và độ chính xác của ước tính trung bình.the standard deviation of the data, the standard error of the mean, and a 95% confidence interval for the mean. The error bars convey the variation in the data and the accuracy of the mean estimate.