یک برنامه پایتون بنویسید که یک فایل CSV حاوی دادههای عددی دوبعدی را بخواند و بهصورت برداری با استفاده از NumPy میانگین، میانه، انحراف معیار هر ستون و ماتریس کوواریانس را محاسبه کرده و زمان اجرای این پیادهسازی را با یک پیادهسازی ساده مبتنی بر حلقههای پایتون مقایسه کند.
3.0 بازدید آخرین ویرایش در 202 روز قبل ساعت 02:18 0.0
برای حل، از numpy.loadtxt یا numpy.genfromtxt برای خواندن دادهها به آرایهٔ دوبعدی استفاده کنید، سپس با np.mean(axis=0)، np.median(axis=0)، np.std(axis=0) و np.cov(rowvar=False) آمارها را محاسبه کنید. برای مقایسهٔ زمان اجرا از time.perf_counter یا ماژول timeit بهره ببرید و نشان دهید که عملیات برداری NumPy بهدلیل اجتناب از حلقههای پایتون و استفاده از پیادهسازیهای بهینهشدهٔ C سریعتر است؛ برای مجموعهدادههای بسیار بزرگ میتوانید به np.memmap یا پردازش دستهای (chunking) اشاره کنید تا حافظه بهتر مدیریت شود.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
برای خواندن دادهها از numpy.loadtxt یا numpy.genfromtxt استفاده کنید تا آرایهٔ دوبعدی بهدست آید و با np.mean(axis=0)، np.median(axis=0)، np.std(axis=0) و np.cov(rowvar=False) آمار هر ستون و ماتریس کوواریانس محاسبه شوند. پیادهسازیهای برداری بهدلیل اجرا در کتابخانههای بهینهشدهٔ C و اجتناب از حلقههای پایتون، معمولاً سریعتر هستند. برای مقایسهٔ زمان اجرا از time.perf_counter یا timeit استفاده کنید و نتیجهٔ تفاوت کارایی را بطور واضح نشان دهید. برای دادههای بسیار بزرگ میتوانید از np.memmap یا پردازش دستهای (chunking) استفاده کنید تا مصرف حافظه مدیریت شود و به نکتههایی مانند صحت دادهها و وجود NaNها نیز توجه کنید.
گزارش