Trả về độ lệch chuẩn, thước đo mức độ phân bố của các phần tử mảng. Theo mặc định, độ lệch chuẩn được tính cho mảng phẳng, nếu không thì trên trục đã chỉ định
Thông số . a mảng_likeTính độ lệch chuẩn của các giá trị này
axis Không hoặc int hoặc bộ số nguyên, tùy chọnTrục hoặc các trục dọc theo đó độ lệch chuẩn được tính toán. Mặc định là tính độ lệch chuẩn của mảng phẳng
Mới trong phiên bản 1. 7. 0
Nếu đây là một bộ số nguyên, độ lệch chuẩn được thực hiện trên nhiều trục, thay vì một trục hoặc tất cả các trục như trước đây
dtype dtype, tùy chọnLoại để sử dụng trong tính toán độ lệch chuẩn. Đối với mảng kiểu số nguyên, giá trị mặc định là float64, đối với mảng kiểu float, giá trị mặc định giống như kiểu mảng
ra ndarray, tùy chọnMảng đầu ra thay thế để đặt kết quả. Nó phải có hình dạng giống như đầu ra dự kiến nhưng loại [của các giá trị được tính toán] sẽ được truyền nếu cần
ddof int, tùy chọnCó nghĩa là bậc tự do Delta. Số chia được sử dụng trong phép tính là
>>> a = np.zeros[[2, 512*512], dtype=np.float32] >>> a[0, :] = 1.0 >>> a[1, :] = 0.1 >>> np.std[a] 0.450000052, trong đó
>>> a = np.zeros[[2, 512*512], dtype=np.float32] >>> a[0, :] = 1.0 >>> a[1, :] = 0.1 >>> np.std[a] 0.450000053 đại diện cho số phần tử. Theo mặc định ddof bằng khôngkeepdims bool, tùy chọn
Nếu điều này được đặt thành True, các trục bị giảm sẽ được để lại trong kết quả dưới dạng kích thước với kích thước một. Với tùy chọn này, kết quả sẽ phát chính xác đối với mảng đầu vào
Nếu giá trị mặc định được chuyển, thì keepdims sẽ không được chuyển qua phương thức
>>> a = np.zeros[[2, 512*512], dtype=np.float32] >>> a[0, :] = 1.0 >>> a[1, :] = 0.1 >>> np.std[a] 0.450000054 của các lớp con của
>>> a = np.zeros[[2, 512*512], dtype=np.float32] >>> a[0, :] = 1.0 >>> a[1, :] = 0.1 >>> np.std[a] 0.450000055, tuy nhiên mọi giá trị không mặc định sẽ được. Nếu phương thức của lớp con không thực hiện keepdims, bất kỳ ngoại lệ nào sẽ được đưa raở đâu array_like của bool, tùy chọn
Các yếu tố bao gồm trong độ lệch chuẩn. Xem
>>> a = np.zeros[[2, 512*512], dtype=np.float32] >>> a[0, :] = 1.0 >>> a[1, :] = 0.1 >>> np.std[a] 0.450000056 để biết chi tiết
Mới trong phiên bản 1. 20. 0
Trả về . standard_deviation ndarray, xem thông số dtype ở trênNếu out là Không, hãy trả về một mảng mới chứa độ lệch chuẩn, nếu không thì trả về một tham chiếu đến mảng đầu ra
Xem thêm
>>> a = np.zeros[[2, 512*512], dtype=np.float32] >>> a[0, :] = 1.0 >>> a[1, :] = 0.1 >>> np.std[a] 0.450000057,
>>> a = np.zeros[[2, 512*512], dtype=np.float32] >>> a[0, :] = 1.0 >>> a[1, :] = 0.1 >>> np.std[a] 0.450000050,
>>> a = np.zeros[[2, 512*512], dtype=np.float32] >>> a[0, :] = 1.0 >>> a[1, :] = 0.1 >>> np.std[a] 0.450000051,
>>> a = np.zeros[[2, 512*512], dtype=np.float32] >>> a[0, :] = 1.0 >>> a[1, :] = 0.1 >>> np.std[a] 0.450000052,
>>> a = np.zeros[[2, 512*512], dtype=np.float32] >>> a[0, :] = 1.0 >>> a[1, :] = 0.1 >>> np.std[a] 0.450000053 Xác định loại đầu ra
ghi chú
Độ lệch chuẩn là căn bậc hai của trung bình cộng bình phương độ lệch so với giá trị trung bình, i. e. ,
>>> a = np.zeros[[2, 512*512], dtype=np.float32] >>> a[0, :] = 1.0 >>> a[1, :] = 0.1 >>> np.std[a] 0.450000054, trong đó
>>> a = np.zeros[[2, 512*512], dtype=np.float32] >>> a[0, :] = 1.0 >>> a[1, :] = 0.1 >>> np.std[a] 0.450000055
Độ lệch bình phương trung bình thường được tính là
>>> a = np.zeros[[2, 512*512], dtype=np.float32] >>> a[0, :] = 1.0 >>> a[1, :] = 0.1 >>> np.std[a] 0.450000056, trong đó
>>> a = np.zeros[[2, 512*512], dtype=np.float32] >>> a[0, :] = 1.0 >>> a[1, :] = 0.1 >>> np.std[a] 0.450000057. Tuy nhiên, nếu ddof được chỉ định, thì số chia
>>> a = np.zeros[[2, 512*512], dtype=np.float32] >>> a[0, :] = 1.0 >>> a[1, :] = 0.1 >>> np.std[a] 0.450000052 được sử dụng thay thế. Trong thực hành thống kê tiêu chuẩn,
>>> a = np.zeros[[2, 512*512], dtype=np.float32] >>> a[0, :] = 1.0 >>> a[1, :] = 0.1 >>> np.std[a] 0.450000059 cung cấp một công cụ ước tính không chệch về phương sai của dân số vô hạn.
>>> np.std[a, dtype=np.float64] 0.44999999925494177 # may vary0 cung cấp ước tính khả năng tối đa của phương sai cho các biến phân phối bình thường. Độ lệch chuẩn được tính toán trong hàm này là căn bậc hai của phương sai ước tính, do đó, ngay cả với
>>> a = np.zeros[[2, 512*512], dtype=np.float32] >>> a[0, :] = 1.0 >>> a[1, :] = 0.1 >>> np.std[a] 0.450000059, nó sẽ không phải là ước tính khách quan của độ lệch chuẩn.
Lưu ý rằng, đối với các số phức,
>>> a = np.zeros[[2, 512*512], dtype=np.float32] >>> a[0, :] = 1.0 >>> a[1, :] = 0.1 >>> np.std[a] 0.450000054 lấy giá trị tuyệt đối trước khi bình phương, do đó kết quả luôn là số thực và không âm
Đối với đầu vào dấu phẩy động, tiêu chuẩn được tính bằng cùng độ chính xác mà đầu vào có. Tùy thuộc vào dữ liệu đầu vào, điều này có thể khiến kết quả không chính xác, đặc biệt là đối với float32 [xem ví dụ bên dưới]. Chỉ định bộ tích lũy có độ chính xác cao hơn bằng cách sử dụng từ khóa
>>> np.std[a, dtype=np.float64] 0.44999999925494177 # may vary3 có thể giảm bớt sự cố này