یک برنامه پایتون بنویسید که میانگین، واریانس و انحراف معیار نمونهای را برای یک مجموعهدادهٔ بزرگ آماری (statistics) بهصورت حافظهموثر و سریع با استفاده از numpy محاسبه کند.
2.0 بازدید آخرین ویرایش در 221 روز قبل ساعت 01:09 0.0
برای حل: دادهها را بهصورت تکهای (chunking) یا با np.memmap بارگذاری کنید تا از پر شدن حافظه جلوگیری شود، سپس با الگوریتم یکگذرهٔ Welford یا محاسبات تجمعی روی هر تکه میانگین و واریانس را بهدست آورید تا پایداری عددی تضمین شود. برای سرعت بالاتر از توابع برداریشدهی numpy (np.mean, np.var) استفاده کنید و در صورت نیاز برای پردازش موازی تکهها از multiprocessing یا joblib بهره ببرید؛ نکات مفید: از dtype=float64 استفاده کنید، از حلقههای پایتون روی عناصر خودداری کنید و نتایج تکهها را با فرمولهای ترکیب میانگین/واریانس ادغام کنید.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
برای دادههای بزرگ از np.memmap یا chunking استفاده کن تا حافظه پر نشود و دادهها را با dtype=float64 بخوانی. با اجرای یکگذرهٔ Welford یا ترکیب نتایج تکهها، میانگین، واریانس و انحراف معیار نمونهای را بهطور عددی پایدار و سریع بدست آور. برای سرعت بیشتر، از توابع برداری numpy استفاده کن و محاسبات تکهای را با multiprocessing یا joblib موازی کن و نتیجهها را با فرمولهای ترکیبی ترکیب کن. همچنین برای واریانس نمونهای، از ddof=1 استفاده کن تا خروجی با استاندارد آماری مطابقت داشته باشد.
گزارش