7 days of WordPress plugins, themes & templates - for free!* Unlimited asset downloads! Start 7-Day Free Trial
Advertisement
  1. Code
  2. Python

Các Mô-đun Toán học trong Python: Statistics

Scroll to top
Read Time: 7 mins
This post is part of a series called Mathematical Modules in Python.
Mathematical Modules in Python: Decimal and Fractions
Mathematical Modules in Python: Statistics

Vietnamese (Tiếng Việt) translation by Dai Phong (you can also view the original English article)

Phân tích số liệu thống kê giúp chúng ta hiểu được toàn bộ thông tin. Điều này ứng dụng trong rất nhiều lĩnh vực như thống kê sinh vật học và phân tích kinh doanh.

Thay vì duyệt qua các data point riêng lẻ, thì chỉ cần nhìn vào giá trị trung bình hoặc phương sai của bộ dữ liệu là có thể biết được xu hướng và các đặc trưng mà chúng ta có thể đã bỏ qua khi quan sát tất cả các dữ liệu ở định dạng thô. Nó cũng làm cho việc so sánh giữa hai bộ dữ liệu lớn trở nên dễ dàng và có ý nghĩa hơn.

Nhận ra những nhu cầu này, Python đã cung cấp cho chúng ta module statistics.

Trong hướng dẫn này, bạn sẽ học về các cách khác nhau để tính trung bình và đo lường độ chênh (spread) của một tập hợp dữ liệu nhất định. Trừ khi có những quy ước khác, tất cả các hàm trong mô-đun này hỗ trợ các tập dữ liệu đầu vào cơ bản int, float, decimalfraction.

Tính Trung bình

Bạn có thể sử dụng hàm mean(data) để tính trung bình của một số dữ liệu nhất định. Nó được tính bằng cách chia tổng của tất cả các data point cho số data point. Nếu dữ liệu rỗng, một StatisticsError sẽ được đưa ra. Dưới đây là vài ví dụ:

Bạn đã học được rất nhiều hàm để tạo ra các số ngẫu nhiên trong hướng dẫn trước của chúng tôi. Hãy sử dụng chúng ngay bây giờ để tạo ra dữ liệu của chúng ta và xem liệu trung bình cuối cùng có bằng với những gì chúng ta mong đợi hay không.

Với hàm randint(), giá trị trung bình dự kiến ​​sẽ gần với trung điểm của cả hai cực trị, và với sự phân bổ tam giác, nó được cho là gần với mức low + high + mode / 3. Vì vậy, trung bình trong trường hợp đầu tiên và thứ hai tương ứng là 50 và 60,33, gần với những gì chúng ta thực sự có được.

Tính Mode

Mean là một chỉ số xác định giá trị trung bình rất tốt, nhưng một vài giá trị phân cực có thể dẫn đến một trung bình xa điểm giữa thật sự. Trong một số trường hợp, cần xác định data-point thường xuyên nhất trong một tập dữ liệu. Hàm mode() sẽ trả về data point phổ biến nhất từ ​​số rời rạc cũng như dữ liệu không phải là số. Đây là hàm thống kê duy nhất có thể được sử dụng với dữ liệu không phải là số.

Mode của các số nguyên được tạo ngẫu nhiên trong một phạm vi nhất định có thể là bất kỳ số nào vì tần suất xuất hiện của mỗi số không dự đoán được. Ba ví dụ trong đoạn code ở trên chứng minh điểm đó. Ví dụ cuối cùng trình bày cho chúng ta thấy cách chúng ta có thể tính được mode của dữ liệu không phải là số.

Tính Trung vị

Dựa vào mode để tính toán một giá trị trung điểm có thể gây chút hiểu nhầm. Như chúng ta đã thấy trong phần trước, nó sẽ luôn là data point phổ biến nhất, bất kể tất cả các giá trị khác trong bộ dữ liệu. Một cách khác để xác định trung vị là sử dụng hàm median(). Nó sẽ trả về giá trị trung vị của dữ liệu số cho trước bằng cách tính trung bình của hai điểm giữa nếu cần. Nếu số data point là lẻ, nó sẽ trả về điểm giữa. Nếu số data point là chẵn, nó sẽ trả về trung bình của hai giá trị trung vị.

Vấn đề với hàm median() là giá trị cuối cùng có thể không phải là một data point thật sự khi số data point là chẵn. Trong những trường hợp như vậy, bạn có thể sử dụng median_low() hoặc median_high() để tính toán trung vị. Với số data point chẵn, các hàm này sẽ trả về giá trị nhỏ hơn và lớn hơn của hai điểm giữa tương ứng.

Trong trường hợp cuối cùng, trung vị thấp và cao là 50 và 52. Điều này có nghĩa là không có data point có giá trị 51 trong tập dữ liệu của chúng ta, nhưng hàm median() vẫn tính trung vị là 51,0.

Đo Độ lệch của Dữ liệu

Xác định có bao nhiêu data point lệch khỏi giá trị điển hình hoặc trung bình của bộ dữ liệu cũng quan trọng không kém tính giá trị trung tâm hoặc trung bình. Mô-đun statistics có bốn hàm khác nhau để giúp chúng ta tính toán độ lệch này của dữ liệu.

Bạn có thể sử dụng hàm pvariance(data, mu=None) để tính phương sai của một bộ dữ liệu nhất định.

Đối số thứ hai trong trường hợp này là không bắt buộc. Giá trị của mu, khi được cung cấp, phải bằng với trung bình của dữ liệu nhất định. Trung bình được tính tự động nếu giá trị bị thiếu. Hàm này rất hữu ích khi bạn muốn tính phương sai của toàn bộ tập hợp. Nếu dữ liệu của bạn chỉ là một mẫu của tập hợp, bạn có thể sử dụng hàm variance(data, xBar=None) để tính toán phương sai của mẫu dữ liệu. Ở đây, xBar là trung bình của mẫu dữ liệu cho trước và được tính tự động nếu không được cung cấp.

Để tính toán độ rõ tiêu chuẩn của tập hợp và độ lệch tiêu chuẩn của mẫu dữ liệu, bạn có thể sử dụng các hàm pstdev(data, mu=None)stdev(data, xBar=None) tương ứng.

Như minh chứng từ ví dụ trên, phương sai nhỏ hơn hàm ý rằng nhiều data point có giá trị gần hơn với giá trị trung bình. Bạn cũng có thể tính độ lệch chuẩn của các số thập phân và phân số.

Phần Tóm tắt

Trong hướng dẫn cuối cùng của loạt bài này, chúng ta đã tìm hiểu về các hàm khác nhau có sẵn trong mô-đun statistics. Bạn có thể đã quan sát thấy rằng dữ liệu đưa ra cho các hàm đã được sắp xếp trong hầu hết các trường hợp, nhưng không bắt buộc phải làm như vậy. Tôi đã sử dụng các danh sách được sắp xếp trong hướng dẫn này vì chúng giúp dễ dàng hơn để hiểu cách giá trị trả về bởi các hàm khác nhau có liên quan đến dữ liệu đầu vào.

Advertisement
Did you find this post useful?
Want a weekly email summary?
Subscribe below and we’ll send you a weekly email summary of all new Code tutorials. Never miss out on learning about the next big thing.
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.