2012-02-21 40 views
8

Tôi đã từng làm việc với một cách lúng túng và cần hàm random.choice(). Đáng buồn thay, trong phiên bản 2.0, nó không có trong các mô-đun ngẫu nhiên hoặc random.mtrand.RandomState. Nó đã bị loại trừ vì một lý do cụ thể? Không có gì trong cuộc thảo luận hoặc tài liệu về nó!Tại sao chức năng random.choice() bị ngừng hoạt động?

Để biết thông tin, tôi đang chạy Numpy 2.0 trên python 2.7 trên mac os. Tất cả được cài đặt từ trình cài đặt chuẩn được cung cấp trên các trang web.

Cảm ơn!

+2

phỏng đoán đầu tiên của tôi là nó không bị gián đoạn nhưng bạn chưa cài đặt đúng cách. Tài liệu cho biết mới cho 1.7.0 gumpy, bạn có cài đặt phiên bản ít nhất không? –

+0

Tôi đã cài đặt phiên bản 2.0, vì vậy tôi đã kiểm tra điều đó, xin lỗi vì đã không đề cập đến câu hỏi gốc! Ngoài ra, từ những gì tôi đã tìm thấy trong tài liệu, random.choice không cho phép bạn chỉ định trọng số và chọn một phần tử ngẫu nhiên đồng nhất là khá đơn giản. Nó khá đơn giản với trọng lượng là tốt, chỉ nghĩ rằng nó có thể là thú vị để có nó trong gumpy. Tôi thực hiện nó bản thân mình sau đó: http://pastebin.com/wpQ08xqV –

+3

Không có những điều như numpy 2.0 tại thời điểm này. Bạn đã cài đặt một số sửa đổi chưa biết của các nguồn phát triển xảy ra với danh sách là 2.0. Bạn có thể có một bản sửa đổi trước khi 'choice()' được thêm vào. –

Trả lời

8

random.choice là như xa như tôi có thể nói một phần của python chính nó, không phải của numpy. Bạn đã import random?

Cập nhật: numpy 1.7 đã thêm chức năng mới, numpy.random.choice. Rõ ràng, bạn cần numpy 1.7 cho nó.

Update2: có vẻ như trong chưa được phát hành numpy 2.0, tạm thời được gọi là numpy.random.sample. Nó đã được đổi tên lại. Đó là lý do tại sao khi sử dụng các phiên bản chưa được phát hành, bạn thực sự cần xem xét API (pydoc numpy.random) và các thay đổi.

+2

Cả hai đều có hàm random.choice(). –

+0

random.choice() chọn đồng nhất, và tôi không thể tìm thấy numpy.random.choice không phải là numpy.random.mtrand.RandomState.choice() trong bản cài đặt có phần cứng của tôi 2.0. –

+0

Sau đó, có lẽ bạn nên dính vào bản phát hành mới nhất. 2.0 chưa hoàn thành. Dù sao, bạn có thể thử 'numpy.random.sample' mà dường như đã được đổi tên thành' numpy.random.choice' đôi khi vào tháng 12. –

Các vấn đề liên quan