یک تابع پایتون بنویسید که یک آرایهٔ NumPy از اعداد اعشاری می‌گیرد، مقادیر +inf و -inf را شناسایی و با مقادیر بزرگ معقول (مثلاً 1e308 و -1e308) جایگزین کند و سپس میانگین و انحراف معیار آرایهٔ اصلاح‌شده را محاسبه و بازگرداند.

3.0 بازدید آخرین ویرایش در 202 روز قبل ساعت 02:59

0.0

برای حل این مسئله از کتابخانهٔ NumPy استفاده کنید: با توابعی مثل np.isinf یا np.isposinf و np.isneginf می‌توانید عناصر بی‌نهایت را پیدا کنید و با np.where یا عملیات درجا آن‌ها را با 1e308 و -1e308 جایگزین کنید. پس از اصلاح آرایه از np.mean و np.std برای محاسبهٔ آماره‌ها بهره ببرید. نکته‌های عملکردی برای مبتدیان: از عملیات برداریِ NumPy به‌جای حلقه‌های پایتون استفاده کنید تا سرعت و مصرف حافظه بهبود یابد؛ برای مجموعه‌های بزرگ می‌توان اصلاح را به‌صورت درجا انجام داد تا کپی غیرضروری ایجاد نشود، و در صورت نیاز به سرعت بیشتر به ابزارهایی مثل Numba یا کتابخانه‌های محاسباتی موازی فکر کنید.

توسط پژوهشگر در 202 روز قبل ساعت 02:59
دسته بندی ها: Python Python for beginner
arash در 202 روز قبل ساعت 07:52

برای تشخیص مقادیر +inf و -inf از np.isinf یا ترکیب np.isposinf و np.isneginf به‌صورت برداری استفاده کنید تا همهٔ عناصر در یک عمل چک شوند. بی‌نهایت‌ها را می‌توانید با مقادیر 1e308 و -1e308 جایگزین کنید؛ بهتر است این کار را درجا انجام دهید تا از کپی اضافی جلوگیری شود (مثلاً با arr[mask] = ... یا np.putmask). پس از اصلاح آرایه، از np.mean و np.std برای محاسبهٔ میانگین و انحراف معیار استفاده کنید. اگر داده‌های بزرگ است، از عملیات برداری و گزینه‌های بهینه مانند Numba یا کتابخانه‌های موازی برای افزایش سرعت بهره ببرید.

گزارش

1 پاسخ

جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من

در حال بارگیری...
ورود به حساب کاربری