[fa,ur,zh-CN] chore(i18n): sync translations

Sync translations with latest source changes.
Languages: Persian (Farsi) [fa], Urdu [ur], Chinese (Simplified) [zh-CN]
update-translations
localizeflow[bot] 7 days ago
parent f6b3630c7e
commit fc898aee9c

@ -12,8 +12,8 @@
"language_code": "fa"
},
"1-Introduction/01-defining-data-science/notebook.ipynb": {
"original_hash": "8f5eb7b3f7cc89e6d98fb32e1de65dec",
"translation_date": "2026-02-28T08:11:58+00:00",
"original_hash": "8eb07e3d899aaba7ea9c9ec9b5aa2850",
"translation_date": "2026-07-17T21:12:54+00:00",
"source_file": "1-Introduction/01-defining-data-science/notebook.ipynb",
"language_code": "fa"
},
@ -42,8 +42,8 @@
"language_code": "fa"
},
"1-Introduction/03-defining-data/README.md": {
"original_hash": "12339119c0165da569a93ddba05f9339",
"translation_date": "2025-09-05T14:24:17+00:00",
"original_hash": "7217c6f9eb464d4ff4bae6c036ab53cb",
"translation_date": "2026-07-17T21:19:26+00:00",
"source_file": "1-Introduction/03-defining-data/README.md",
"language_code": "fa"
},
@ -65,6 +65,12 @@
"source_file": "1-Introduction/04-stats-and-probability/assignment.md",
"language_code": "fa"
},
"1-Introduction/04-stats-and-probability/notebook.ipynb": {
"original_hash": "0c77e104b29c723287bf11b773fcc5d5",
"translation_date": "2026-07-17T21:14:04+00:00",
"source_file": "1-Introduction/04-stats-and-probability/notebook.ipynb",
"language_code": "fa"
},
"1-Introduction/README.md": {
"original_hash": "696a8474a01054281704cbfb09148949",
"translation_date": "2025-08-24T21:15:11+00:00",
@ -108,8 +114,8 @@
"language_code": "fa"
},
"2-Working-With-Data/07-python/notebook-covidspread.ipynb": {
"original_hash": "6335cccba01dc6ad7b15aba7a8c73f38",
"translation_date": "2026-02-28T08:13:22+00:00",
"original_hash": "da97f98781c7cd271063f605fe8d71d0",
"translation_date": "2026-07-17T21:12:22+00:00",
"source_file": "2-Working-With-Data/07-python/notebook-covidspread.ipynb",
"language_code": "fa"
},
@ -192,14 +198,14 @@
"language_code": "fa"
},
"3-Data-Visualization/13-meaningful-visualizations/solution/README.md": {
"original_hash": "5c51a54dd89075a7a362890117b7ed9e",
"translation_date": "2025-08-24T22:34:39+00:00",
"original_hash": "2b3b2632bb02af608ca60be828e8097d",
"translation_date": "2026-07-17T21:19:35+00:00",
"source_file": "3-Data-Visualization/13-meaningful-visualizations/solution/README.md",
"language_code": "fa"
},
"3-Data-Visualization/13-meaningful-visualizations/starter/README.md": {
"original_hash": "5c51a54dd89075a7a362890117b7ed9e",
"translation_date": "2025-08-24T22:34:08+00:00",
"original_hash": "2b3b2632bb02af608ca60be828e8097d",
"translation_date": "2026-07-17T21:19:31+00:00",
"source_file": "3-Data-Visualization/13-meaningful-visualizations/starter/README.md",
"language_code": "fa"
},

File diff suppressed because one or more lines are too long

@ -1,76 +1,79 @@
# تعریف داده‌ها
|![طرح‌نگاری توسط [(@sketchthedocs)](https://sketchthedocs.dev)](../../sketchnotes/03-DefiningData.png)|
|![ اسکچ‌نوت توسط [(@sketchthedocs)](https://sketchthedocs.dev) ](../../sketchnotes/03-DefiningData.png)|
|:---:|
|تعریف داده‌ها - _طرح‌نگاری توسط [@nitya](https://twitter.com/nitya)_ |
|تعریف داده‌ها - _اسکچ‌نوت توسط [@nitya](https://twitter.com/nitya)_ |
داده‌ها شامل حقایق، اطلاعات، مشاهدات و اندازه‌گیری‌هایی هستند که برای کشف و تصمیم‌گیری‌های آگاهانه استفاده می‌شوند. یک نقطه داده یک واحد منفرد از داده‌ها در یک مجموعه داده است که شامل مجموعه‌ای از نقاط داده می‌باشد. مجموعه‌های داده ممکن است در قالب‌ها و ساختارهای مختلفی ارائه شوند و معمولاً بر اساس منبع آن‌ها یا جایی که داده‌ها از آن آمده‌اند، شکل می‌گیرند. به عنوان مثال، درآمد ماهانه یک شرکت ممکن است در یک صفحه گسترده باشد، اما داده‌های ضربان قلب ساعتی از یک ساعت هوشمند ممکن است در قالب [JSON](https://stackoverflow.com/a/383699) باشد. معمولاً دانشمندان داده با انواع مختلف داده‌ها در یک مجموعه داده کار می‌کنند.
داده‌ها حقایق، اطلاعات، مشاهدات و اندازه‌گیری‌هایی هستند که برای کشف و پشتیبانی از تصمیم‌گیری‌های آگاهانه استفاده می‌شوند. یک نقطه داده یک واحد تکی داده در یک مجموعه داده است، که خود مجموعه‌ای از نقاط داده است. مجموعه داده‌ها ممکن است در فرمت‌ها و ساختارهای مختلفی باشند و معمولاً بر اساس منبع خود یا جایی که داده‌ها آمده‌اند، تنظیم می‌شوند. به عنوان مثال، درآمد ماهانه یک شرکت ممکن است در یک صفحه گسترده باشد اما داده‌های ضربان قلب ساعتی از یک ساعت هوشمند ممکن است در فرمت [JSON](https://stackoverflow.com/a/383699) باشد. معمول است که دانشمندان داده با انواع مختلف داده‌ها در یک مجموعه داده کار کنند.
این درس بر شناسایی و طبقه‌بندی داده‌ها بر اساس ویژگی‌ها و منابع آن‌ها تمرکز دارد.
## [آزمون پیش از درس](https://ff-quizzes.netlify.app/en/ds/quiz/4)
## [آزمون پیش‌درس](https://ff-quizzes.netlify.app/en/ds/quiz/4)
## چگونه داده‌ها توصیف می‌شوند
### داده خام
داده خام داده‌ای است که از منبع خود در حالت اولیه آمده و هنوز تحلیل یا سازماندهی نشده است. برای درک آنچه در یک مجموعه داده اتفاق می‌افتد، باید به شکلی سازماندهی شود که توسط انسان‌ها و همچنین فناوری‌هایی که ممکن است برای تحلیل بیشتر استفاده کنند، قابل فهم باشد. ساختار یک مجموعه داده نحوه سازماندهی آن را توصیف می‌کند و می‌تواند به صورت ساختاریافته، غیرساختاریافته و نیمه‌ساختاریافته طبقه‌بندی شود. این نوع ساختارها بسته به منبع متفاوت خواهند بود، اما در نهایت در این سه دسته قرار می‌گیرند.
داده خام داده‌ای است که از منبع خود در حالت اولیه آمده و تحلیل یا سازماندهی نشده است. برای درک اینکه چه اتفاقی در یک مجموعه داده می‌افتد، باید آن را به فرمتی سازماندهی کرد که هم برای انسان‌ها و هم فناوری که ممکن است برای تحلیل بیشتر استفاده شود، قابل فهم باشد. ساختار یک مجموعه داده توصیف می‌کند که چگونه سازماندهی شده و می‌تواند در دسته‌های ساختاریافته، بدون ساختار و نیمه‌ساختاریافته طبقه‌بندی شود. این انواع ساختار بسته به منبع متفاوت خواهند بود اما نهایتاً در این سه دسته قرار می‌گیرند.
### داده‌های کمی
داده‌های کمی مشاهدات عددی در یک مجموعه داده هستند و معمولاً می‌توان آن‌ها را تحلیل، اندازه‌گیری و به صورت ریاضی استفاده کرد. برخی از نمونه‌های داده‌های کمی عبارتند از: جمعیت یک کشور، قد یک فرد یا درآمد سه‌ماهه یک شرکت. با تحلیل بیشتر، داده‌های کمی می‌توانند برای کشف روندهای فصلی شاخص کیفیت هوا (AQI) یا تخمین احتمال ترافیک در ساعات شلوغی یک روز کاری معمولی استفاده شوند.
### داده کمی
داده کمی مشاهدات عددی در یک مجموعه داده است و معمولاً می‌تواند تحلیل، اندازه‌گیری و به صورت ریاضی استفاده شود. برخی مثال‌های داده کمی عبارتند از: جمعیت یک کشور، قد یک فرد یا درآمد سه‌ماهه یک شرکت. با تحلیل اضافی، داده‌های کمی می‌تواند برای کشف روندهای فصلی شاخص کیفیت هوا (AQI) یا برآورد احتمال ترافیک در ساعت شلوغی یک روز کاری معمولی استفاده شود.
### داده‌های کیفی
داده‌های کیفی، که به عنوان داده‌های دسته‌بندی‌شده نیز شناخته می‌شوند، داده‌هایی هستند که نمی‌توانند به صورت عینی مانند مشاهدات داده‌های کمی اندازه‌گیری شوند. این داده‌ها معمولاً در قالب‌های مختلفی از داده‌های ذهنی هستند که کیفیت چیزی مانند یک محصول یا فرآیند را ثبت می‌کنند. گاهی اوقات داده‌های کیفی عددی هستند اما معمولاً به صورت ریاضی استفاده نمی‌شوند، مانند شماره تلفن‌ها یا زمان‌سنج‌ها. برخی از نمونه‌های داده‌های کیفی عبارتند از: نظرات ویدئویی، مدل و برند یک خودرو یا رنگ مورد علاقه نزدیک‌ترین دوستان شما. داده‌های کیفی می‌توانند برای درک اینکه کدام محصولات بیشتر مورد علاقه مصرف‌کنندگان هستند یا شناسایی کلمات کلیدی محبوب در رزومه‌های شغلی استفاده شوند.
### داده کیفی
داده کیفی که همچنین به عنوان داده دسته‌ای شناخته می‌شود، داده‌ای است که به صورت عینی قابل اندازه‌گیری نیست مانند مشاهدات داده کمی. معمولاً فرمت‌های مختلفی از داده‌های ذهنی است که کیفیت چیزی مانند یک محصول یا فرآیند را ثبت می‌کند. گاهی داده کیفی عددی است اما معمولاً به صورت ریاضی استفاده نمی‌شود، مانند شماره تلفن یا زمان ثبت. چند مثال از داده کیفی عبارتند از: کامنت‌های ویدیو، برند و مدل یک خودرو یا رنگ مورد علاقه نزدیک‌ترین دوستان شما. داده کیفی می‌تواند برای فهمیدن اینکه کدام محصولات بیشتر دوست داشته شده‌اند یا شناسایی کلمات کلیدی محبوب در رزومه‌های درخواست شغل استفاده شود.
### داده‌های ساختاریافته
داده‌های ساختاریافته داده‌هایی هستند که به صورت ردیف‌ها و ستون‌ها سازماندهی شده‌اند، به طوری که هر ردیف مجموعه‌ای از ستون‌های یکسان دارد. ستون‌ها نمایانگر یک مقدار از نوع خاصی هستند و با نامی که نشان‌دهنده آنچه مقدار نشان می‌دهد، شناسایی می‌شوند، در حالی که ردیف‌ها مقادیر واقعی را شامل می‌شوند. ستون‌ها اغلب مجموعه‌ای از قوانین یا محدودیت‌ها در مورد مقادیر دارند تا اطمینان حاصل شود که مقادیر به درستی نمایانگر ستون هستند. به عنوان مثال، تصور کنید یک صفحه گسترده مشتریان که هر ردیف باید یک شماره تلفن داشته باشد و شماره تلفن‌ها هرگز شامل کاراکترهای الفبایی نمی‌شوند. ممکن است قوانینی بر روی ستون شماره تلفن اعمال شود تا مطمئن شود که هرگز خالی نیست و فقط شامل اعداد است.
### داده ساختاریافته
داده ساختاریافته داده‌ای است که به صورت ردیف‌ها و ستون‌ها سازماندهی شده که هر ردیف مجموعه یکسانی از ستون‌ها را دارد. ستون‌ها نمایانگر مقداری از نوع خاصی هستند و با نامی که نمایانگر آن مقدار است مشخص می‌شوند، در حالی که ردیف‌ها مقادیر واقعی را در خود دارند. ستون‌ها اغلب قوانین یا محدودیت‌های خاصی روی مقادیر دارند تا اطمینان حاصل شود که مقادیر به درستی ستون را نمایندگی می‌کنند. به عنوان مثال، یک صفحه گسترده مشتریان که در هر ردیف باید شماره تلفن وجود داشته باشد و شماره تلفن‌ها هرگز شامل حروف الفبایی نباشند. ممکن است قوانینی روی ستون شماره تلفن اعمال شده باشد تا مطمئن شود که هرگز خالی نیست و فقط شامل اعداد است.
یکی از مزایای داده‌های ساختاریافته این است که می‌توان آن‌ها را به گونه‌ای سازماندهی کرد که با داده‌های ساختاریافته دیگر مرتبط شوند. با این حال، به دلیل اینکه داده‌ها به گونه‌ای طراحی شده‌اند که به صورت خاصی سازماندهی شوند، ایجاد تغییرات در ساختار کلی آن‌ها ممکن است تلاش زیادی را بطلبد. به عنوان مثال، اضافه کردن یک ستون ایمیل به صفحه گسترده مشتریان که نمی‌تواند خالی باشد، به این معناست که باید مشخص کنید چگونه این مقادیر را به ردیف‌های موجود مشتریان در مجموعه داده اضافه کنید.
مزیت داده ساختاریافته این است که می‌تواند به گونه‌ای سازماندهی شود که با داده‌های ساختاریافته دیگر مرتبط شود. ولی چون داده برای سازماندهی به روشی خاص طراحی شده، تغییرات در ساختار کلی آن می‌تواند نیازمند تلاش زیادی باشد. به عنوان مثال، افزودن ستون ایمیل به صفحه مشتریان که نمی‌تواند خالی باشد یعنی باید راهی برای اضافه کردن این مقادیر به ردیف‌های موجود مشتریان در مجموعه داده پیدا کنید.
نمونه‌هایی از داده‌های ساختاریافته: صفحات گسترده، پایگاه‌های داده رابطه‌ای، شماره تلفنها، صورتحساب‌های بانکی
مثال‌های داده ساختاریافته: صفحات گسترده، پایگاه داده‌های رابطه‌ای، شماره‌های تلفن، صورتحساب‌های بانکی
### داده‌های غیرساختاریافته
داده‌های غیرساختاریافته معمولاً نمی‌توانند به صورت ردیف‌ها یا ستون‌ها دسته‌بندی شوند و قالب یا مجموعه‌ای از قوانین برای پیروی ندارند. به دلیل اینکه داده‌های غیرساختاریافته محدودیت‌های کمتری در ساختار خود دارند، اضافه کردن اطلاعات جدید در مقایسه با یک مجموعه داده ساختاریافته آسان‌تر است. اگر یک حسگر که داده‌های فشار بارومتری را هر ۲ دقیقه ثبت می‌کند، به‌روزرسانی دریافت کند که اکنون اجازه می‌دهد دما را اندازه‌گیری و ثبت کند، نیازی به تغییر داده‌های موجود ندارد اگر غیرساختاریافته باشد. با این حال، این ممکن است تحلیل یا بررسی این نوع داده‌ها را طولانی‌تر کند. به عنوان مثال، یک دانشمند که می‌خواهد میانگین دمای ماه گذشته را از داده‌های حسگر پیدا کند، اما متوجه می‌شود که حسگر در برخی از داده‌های ثبت‌شده خود به جای یک عدد معمولی، یک "e" ثبت کرده است تا نشان دهد خراب بوده است، که به این معناست که داده‌ها ناقص هستند.
### داده بدون ساختار
داده بدون ساختار معمولاً نمی‌تواند در ردیف‌ها یا ستون‌ها دسته‌بندی شود و فرمت یا قوانین مشخصی برای پیروی ندارد. چون داده بدون ساختار محدودیت‌های کمتری در ساختار خود دارد، اضافه کردن اطلاعات جدید آسان‌تر است نسبت به مجموعه داده ساختاریافته. اگر حسگری که داده فشار جو را هر ۲ دقیقه اندازه‌گیری می‌کند به‌روزرسانی شده و اکنون دما را هم اندازه می‌گیرد، اگر داده بدون ساختار باشد نیازی به تغییر داده‌های موجود نیست. اما این ممکن است تحلیل یا بررسی چنین داده‌ای را طولانی‌تر کند. مثلاً دانشمندی که می‌خواهد دمای متوسط ماه گذشته را از داده‌های حسگر پیدا کند اما متوجه شود حسگر در برخی داده‌ها به جای عدد معمولی، حرف "e" را ثبت کرده تا نشان دهد خراب بوده که یعنی داده ناقص است.
نمونه‌هایی از داده‌های غیرساختاریافته: فایل‌های متنی، پیام‌های متنی، فایل‌های ویدئویی
مثال‌های داده بدون ساختار: فایل‌های متنی، پیام‌های متنی، فایل‌های ویدیویی
### داده‌های نیمه‌ساختاریافته
داده‌های نیمه‌ساختاریافته ویژگی‌هایی دارند که آن‌ها را ترکیبی از داده‌های ساختاریافته و غیرساختاریافته می‌سازد. این داده‌ها معمولاً به قالب ردیف‌ها و ستون‌ها پایبند نیستند اما به گونه‌ای سازماندهی شده‌اند که ساختاریافته محسوب می‌شوند و ممکن است از یک قالب ثابت یا مجموعه‌ای از قوانین پیروی کنند. ساختار بسته به منابع متفاوت خواهد بود، مانند یک سلسله‌مراتب تعریف‌شده تا چیزی انعطاف‌پذیرتر که اجازه ادغام آسان اطلاعات جدید را می‌دهد. فراداده‌ها شاخص‌هایی هستند که به تصمیم‌گیری در مورد نحوه سازماندهی و ذخیره داده‌ها کمک می‌کنند و نام‌های مختلفی بر اساس نوع داده خواهند داشت. برخی از نام‌های رایج برای فراداده‌ها عبارتند از: برچسب‌ها، عناصر، موجودیت‌ها و ویژگی‌ها. به عنوان مثال، یک پیام ایمیل معمولی شامل موضوع، متن و مجموعه‌ای از گیرندگان خواهد بود و می‌توان آن را بر اساس اینکه توسط چه کسی یا چه زمانی ارسال شده است، سازماندهی کرد.
### نیمه‌ساختاریافته
داده نیمه‌ساختاریافته ویژگی‌هایی دارد که آن را ترکیبی از داده ساختاریافته و بدون ساختار می‌کند. معمولاً با فرمت ردیف‌ها و ستون‌ها مطابقت ندارد اما به گونه‌ای سازماندهی شده که ساختاری محسوب می‌شود و ممکن است فرمت یا قوانین ثابتی را دنبال کند. ساختار بین منابع متفاوت است، مثلاً از سلسله‌مراتب واضح تا چیزی انعطاف‌پذیر که افزودن اطلاعات جدید را آسان می‌کند. متاداده‌ها شاخص‌هایی هستند که کمک می‌کنند تصمیم بگیریم داده چگونه سازماندهی و ذخیره شده است و نام‌های مختلفی بر اساس نوع داده دارند. برخی نام‌های رایج متاداده عبارتند از برچسب‌ها، عناصر، موجودیت‌ها و ویژگی‌ها. مثلاً یک پیام ایمیل معمولی موضوع، متن و مجموعه گیرندگان دارد و می‌تواند بر اساس فرستنده یا زمان ارسال سازماندهی شود.
نمونه‌هایی از داده‌های نیمه‌ساختاریافته: HTML، فایل‌های CSV، JavaScript Object Notation (JSON)
مثال‌های داده نیمه‌ساختاریافته: HTML، فایل‌های CSV، قالب نویسه‌گذاری شیء جاوااسکریپت (JSON)
## منابع داده
یک منبع داده مکان اولیه‌ای است که دادهها در آن تولید شده‌اند یا "زندگی می‌کنند" و بسته به نحوه و زمان جمع‌آوری متفاوت خواهد بود. داده‌هایی که توسط کاربران آن تولید شده‌اند به عنوان داده‌های اولیه شناخته می‌شوند، در حالی که داده‌های ثانویه از منبعی می‌آیند که داده‌ها را برای استفاده عمومی جمع‌آوری کرده است. به عنوان مثال، گروهی از دانشمندان که مشاهداتی را در یک جنگل بارانی جمع‌آوری می‌کنند، به عنوان داده‌های اولیه در نظر گرفته می‌شوند و اگر تصمیم بگیرند آن را با دانشمندان دیگر به اشتراک بگذارند، برای کسانی که از آن استفاده می‌کنند به عنوان داده‌های ثانویه محسوب می‌شود.
منبع داده مکان اولیه‌ای است که داده در آن تولید شده یا "زندگی می‌کند" و بسته به اینکه چگونه و چه زمانی جمع‌آوری شده متفاوت است. داده‌ای که توسط کاربر یا کاربرانش تولید می‌شود داده اولیه نامیده می‌شود در حالی که داده ثانویه از منبعی است که داده را برای استفاده عمومی جمع‌آوری کرده است. مثلاً گروهی از دانشمندان که مشاهداتی را در یک جنگل بارانی جمع‌آوری می‌کنند داده اولیه محسوب می‌شوند و اگر تصمیم بگیرند آن را با دیگر دانشمندان به اشتراک بگذارند برای افرادی که استفاده می‌کنند داده ثانویه خواهد بود.
پایگاه‌های داده یک منبع رایج هستند و به یک سیستم مدیریت پایگاه داده متکی هستند تا داده‌ها را میزبانی و نگهداری کنند، جایی که کاربران از دستورات به نام پرس‌وجوها برای بررسی داده‌ها استفاده می‌کنند. فایل‌ها به عنوان منابع داده می‌توانند فایل‌های صوتی، تصویری و ویدئویی باشند و همچنین صفحات گسترده مانند Excel. منابع اینترنتی مکان رایجی برای میزبانی دادهها هستند، جایی که پایگاه‌های داده و همچنین فایل‌ها می‌توانند یافت شوند. رابط‌های برنامه‌نویسی کاربردی، که به عنوان API شناخته می‌شوند، به برنامه‌نویسان اجازه می‌دهند راه‌هایی برای اشتراک‌گذاری داده‌ها با کاربران خارجی از طریق اینترنت ایجاد کنند، در حالی که فرآیند استخراج داده از صفحات وب داده‌ها را از یک صفحه وب استخراج می‌کند. [درس‌های موجود در کار با داده‌ها](../../../../../../../../../2-Working-With-Data) بر نحوه استفاده از منابع مختلف داده تمرکز دارند.
پایگاه‌های داده منبع رایجی هستند و به یک سیستم مدیریت پایگاه داده متکی هستند که داده را میزبانی و نگهداری می‌کند و کاربران با فرمان‌هایی به نام کوئری داده را بررسی می‌کنند. فایل‌ها به عنوان منابع داده می‌توانند شامل فایل‌های صوتی، تصویری و ویدئویی و همچنین صفحات گسترده مانند اکسل باشند. منابع اینترنتی مکان رایجی برای میزبانی داده هستند که پایگاه‌های داده و فایل‌ها در آن یافت می‌شوند. رابط‌های برنامه‌نویسی کاربردی که به API معروف هستند به برنامه‌نویسان امکان می‌دهند راه‌هایی برای به اشتراک‌گذاری داده با کاربران خارجی از طریق اینترنت ایجاد کنند، در حالی که فرآیند وب اسکرپینگ داده را از یک صفحه وب استخراج می‌کند. دروس بخش [کار با داده‌ها](../../../../../../../../../2-Working-With-Data) بر نحوه استفاده از منابع مختلف داده تمرکز دارند.
## نتیجه‌گیری
در این درس یاد گرفتیم:
در این درس آموختیم:
- داده چیست
- چگونه دادهها توصیف می‌شوند
- چگونه دادهها طبقه‌بندی و دسته‌بندی می‌شوند
- دادهها کجا یافت می‌شوند
- چگونه داده توصیف می‌شود
- چگونه داده طبقه‌بندی و دسته‌بندی می‌شود
- داده کجا می‌تواند یافت شود
## 🚀 چالش
Kaggle منبعی عالی برای مجموعه داده‌های باز است. از [ابزار جستجوی مجموعه داده‌ها](https://www.kaggle.com/datasets) استفاده کنید تا چند مجموعه داده جالب پیدا کنید و ۳-۵ مجموعه داده را با این معیارها طبقه‌بندی کنید:
کاگل منبع فوق‌العاده‌ای از مجموعه داده‌های آزاد است. از [ابزار جستجوی مجموعه داده‌ها](https://www.kaggle.com/datasets) استفاده کنید تا چند مجموعه داده جالب پیدا کنید و ۳ تا ۵ مجموعه داده را با این معیارها طبقه‌بندی کنید:
- آیا داده‌ها کمی هستند یا کیفی؟
- آیا داده‌ها ساختاریافته، غیرساختاریافته یا نیمه‌ساختاریافته هستند؟
- داده کمی است یا کیفی؟
- داده ساختاریافته است، بدون ساختار است یا نیمه‌ساختاریافته؟
## [آزمون پس از درس](https://ff-quizzes.netlify.app/en/ds/quiz/5)
## مرور و مطالعه شخصی
- این واحد Microsoft Learn با عنوان [طبقه‌بندی داده‌های خود](https://docs.microsoft.com/en-us/learn/modules/choose-storage-approach-in-azure/2-classify-data) توضیح مفصلی درباره داده‌های ساختاریافته، نیمه‌ساختاریافته و غیرساختاریافته دارد.
## تکلیف
## مرور و خودآموزی
- این واحد از Microsoft Learn، با عنوان [شناسایی فرمت‌های داده](https://learn.microsoft.com/en-us/training/modules/explore-core-data-concepts/2-data-formats?pivots=text) یک تحلیل دقیق از داده ساختاریافته، نیمه‌ساختاریافته و بدون ساختار ارائه می‌دهد.
## تمرین
[طبقه‌بندی مجموعه‌های داده](assignment.md)
[طبقه‌بندی مجموعه دادهها](assignment.md)
---
**سلب مسئولیت**:
این سند با استفاده از سرویس ترجمه هوش مصنوعی [Co-op Translator](https://github.com/Azure/co-op-translator) ترجمه شده است. در حالی که ما تلاش می‌کنیم دقت را حفظ کنیم، لطفاً توجه داشته باشید که ترجمه‌های خودکار ممکن است شامل خطاها یا نادقتی‌هایی باشند. سند اصلی به زبان اصلی آن باید به عنوان منبع معتبر در نظر گرفته شود. برای اطلاعات حساس، ترجمه حرفه‌ای انسانی توصیه می‌شود. ما هیچ مسئولیتی در قبال سوءتفاهم‌ها یا تفسیرهای نادرست ناشی از استفاده از این ترجمه نداریم.
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**سلب مسئولیت**:
این سند با استفاده از سرویس ترجمه هوش مصنوعی [Co-op Translator](https://github.com/Azure/co-op-translator) ترجمه شده است. در حالی که ما در تلاش برای دقت هستیم، لطفاً توجه داشته باشید که ترجمه‌های خودکار ممکن است شامل خطاها یا نادرستی‌هایی باشند. سند اصلی به زبان مادری خود باید به عنوان منبع معتبر در نظر گرفته شود. برای اطلاعات حیاتی، ترجمه حرفه‌ای انسانی توصیه می‌شود. ما در قبال هرگونه سوء تفاهم یا برداشت نادرست ناشی از استفاده از این ترجمه مسئولیتی نداریم.
<!-- CO-OP TRANSLATOR DISCLAIMER END -->

@ -5,7 +5,7 @@
"metadata": {},
"source": [
"# مقدمه‌ای بر احتمال و آمار\n",
"در این دفترچه، با برخی از مفاهیمی که قبلاً مورد بحث قرار داده‌ایم بازی خواهیم کرد. بسیاری از مفاهیم احتمال و آمار به‌خوبی در کتابخانه‌های اصلی پردازش داده در پایتون مانند `numpy` و `pandas` نمایان شده‌اند.\n"
"در این دفترچه، با برخی از مفاهیمی که قبلاً مورد بحث قرار داده‌ایم بازی خواهیم کرد. بسیاری از مفاهیم احتمال و آمار در کتابخانه‌های مهم پردازش داده در پایتون مانند `numpy` و `pandas` به خوبی نمایش داده شده‌اند.\n"
]
},
{
@ -25,7 +25,7 @@
"metadata": {},
"source": [
"## متغیرهای تصادفی و توزیع‌ها\n",
"بیایید با کشیدن یک نمونه ۳۰ مقداری از توزیع یکنواخت از ۰ تا ۹ شروع کنیم. همچنین میانگین و واریانس را محاسبه خواهیم کرد.\n"
"بیایید با کشیدن نمونه‌ای ۳۰تایی از یک توزیع یکنواخت بین ۰ تا ۹ شروع کنیم. همچنین میانگین و واریانس را محاسبه خواهیم کرد.\n"
]
},
{
@ -44,7 +44,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"برای تخمین بصری اینکه چند مقدار مختلف در نمونه وجود دارد، می‌توانیم **هیستوگرام** را رسم کنیم:\n"
"برای برآورد بصری اینکه چند مقدار مختلف در نمونه وجود دارد، می‌توانیم **هیستوگرام** را رسم کنیم:\n"
]
},
{
@ -61,9 +61,9 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"## تجزیه و تحلیل داده‌های واقعی\n",
"## تحلیل داده‌های واقعی\n",
"\n",
"میانگین و واریانس در تحلیل داده‌های دنیای واقعی بسیار مهم هستند. بیایید داده‌های مربوط به بازیکنان بیسبال را از [SOCR MLB Height/Weight Data](http://wiki.stat.ucla.edu/socr/index.php/SOCR_Data_MLB_HeightsWeights) بارگذاری کنیم.\n"
"میانگین و واریانس هنگام تحلیل داده‌های دنیای واقعی بسیار مهم هستند. بیایید داده‌های مربوط به بازیکنان بیسبال را از [SOCR MLB Height/Weight Data](http://wiki.stat.ucla.edu/socr/index.php/SOCR_Data_MLB_HeightsWeights) بارگذاری کنیم\n"
]
},
{
@ -80,7 +80,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"> ما در اینجا از بسته‌ای به نام [**Pandas**](https://pandas.pydata.org/) برای تحلیل داده‌ها استفاده می‌کنیم. در ادامه این دوره، بیشتر درباره Pandas و کار با داده‌ها در پایتون صحبت خواهیم کرد.\n",
"> ما در اینجا از یک پکیج به نام [**Pandas**](https://pandas.pydata.org/) برای تحلیل داده‌ها استفاده می‌کنیم. بعداً در این دوره بیشتر درباره Pandas و کار با داده‌ها در پایتون صحبت خواهیم کرد.\n",
"\n",
"بیایید میانگین مقادیر سن، قد و وزن را محاسبه کنیم:\n"
]
@ -98,7 +98,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"حالا بیایید روی قد تمرکز کنیم و انحراف معیار و واریانس را محاسبه کنیم:\n"
"حالا بیایید روی قد تمرکز کنیم و انحراف معیار و واریانس را محاسبه کنیم: \n"
]
},
{
@ -126,7 +126,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"علاوه بر میانگین، منطقی است که به مقدار میانه و چارک‌ها نیز نگاه کنیم. آنها می‌توانند با استفاده از **نمودار جعبه‌ای** نمایش داده شوند:\n"
"علاوه بر میانگین، منطقی است که به مقدار میانه و چارک‌ها نیز نگاه کنیم. این موارد را می‌توان با استفاده از **نمودار جعبه‌ای** به تصویر کشید:\n"
]
},
{
@ -136,7 +136,7 @@
"outputs": [],
"source": [
"plt.figure(figsize=(10,2))\n",
"plt.boxplot(df['Height'].ffill(), vert=False, showmeans=True)\n",
"plt.boxplot(df['Height'].ffill(), orientation='horizontal', showmeans=True)\n",
"plt.grid(color='gray', linestyle='dotted')\n",
"plt.tight_layout()\n",
"plt.show()"
@ -146,7 +146,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"ما همچنین می‌توانیم نمودارهای جعبه‌ای از زیرمجموعه‌های مجموعه داده خود بسازیم، به عنوان مثال، گروه‌بندی شده بر اساس نقش بازیکن.\n"
"ما همچنین می‌توانیم نمودار جعبه‌ای از زیرمجموعه‌هایی از مجموعه داده خود بسازیم، برای مثال، گروه‌بندی شده بر اساس نقش بازیکن.\n"
]
},
{
@ -165,9 +165,9 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"> **توجه**: این نمودار نشان می‌دهد که به طور میانگین، قد بازیکنان پست اول بلندتر از قد بازیکنان پست دوم است. بعداً یاد می‌گیریم که چگونه می‌توانیم این فرضیه را به صورت رسمی‌تر آزمایش کنیم و چگونه نشان دهیم داده‌های ما از نظر آماری معنادار هستند تا این موضوع را اثبات کنیم.\n",
"> **توجه**: این نمودار نشان می‌دهد که به طور متوسط، قدهای بازیکنان اول پایه بلندتر از قد بازیکنان دوم پایه است. بعداً یاد می‌گیریم که چگونه می‌توانیم این فرضیه را به صورت رسمی‌تر آزمایش کنیم و چگونه نشان دهیم که داده‌های ما از نظر آماری معنادار هستند تا این موضوع را اثبات کنیم. \n",
"\n",
"سن، قد و وزن همگی متغیرهای تصادفی پیوسته هستند. به نظر شما توزیع آنها چیست؟ یک راه خوب برای فهمیدن، رسم هیستوگرام مقادیر است:\n"
"سن، قد و وزن همگی متغیرهای تصادفی پیوسته هستند. فکر می‌کنید توزیع آنها چگونه است؟ یک راه خوب برای فهمیدن این موضوع، رسم هیستوگرام مقادیر است: \n"
]
},
{
@ -190,7 +190,7 @@
"source": [
"## توزیع نرمال\n",
"\n",
"بیایید یک نمونه ساختگی از وزن‌ها ایجاد کنیم که توزیع نرمالی با همان میانگین و واریانس داده‌های واقعی ما داشته باشد:\n"
"بیایید یک نمونه مصنوعی از وزن‌ها ایجاد کنیم که از توزیع نرمال با همان میانگین و واریانس داده‌های واقعی ما پیروی می‌کند:\n"
]
},
{
@ -231,7 +231,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"از آنجایی که اکثر مقادیر در دنیای واقعی به طور نرمال توزیع می‌شوند، نباید از یک تولیدکننده اعداد تصادفی یکنواخت برای تولید داده‌های نمونه استفاده کنیم. در اینجا آنچه اتفاق می‌افتد اگر سعی کنیم وزن‌ها را با توزیع یکنواخت (تولید شده توسط `np.random.rand`) ایجاد کنیم، آورده شده است:\n"
"از آنجایی که بیشتر مقادیر در زندگی واقعی به‌طور نرمال توزیع شده‌اند، نباید از تولیدکننده اعداد تصادفی یکنواخت برای تولید داده‌های نمونه استفاده کنیم. در اینجا نتیجه‌ای است که اگر سعی کنیم وزن‌ها را با توزیع یکنواخت (تولید شده توسط `np.random.rand`) تولید کنیم، به دست می‌آید:\n"
]
},
{
@ -253,7 +253,7 @@
"source": [
"## بازه‌های اطمینان\n",
"\n",
"حال بیایید بازه‌های اطمینان را برای وزن‌ها و قدهای بازیکنان بیسبال محاسبه کنیم. ما از کد [در این بحث استک‌اورفلو](https://stackoverflow.com/questions/15033511/compute-a-confidence-interval-from-sample-data) استفاده خواهیم کرد:\n"
"حالا بیایید بازه‌های اطمینان برای وزن‌ها و قدهای بازیکنان بیسبال را محاسبه کنیم. ما از کد [از این بحث در استک‌اورفلو](https://stackoverflow.com/questions/15033511/compute-a-confidence-interval-from-sample-data) استفاده خواهیم کرد:\n"
]
},
{
@ -272,7 +272,7 @@
" return m, h\n",
"\n",
"for p in [0.85, 0.9, 0.95]:\n",
" m, h = mean_confidence_interval(df['Weight'].fillna(method='pad'),p)\n",
" m, h = mean_confidence_interval(df['Weight'].ffill(),p)\n",
" print(f\"p={p:.2f}, mean = {m:.2f} ± {h:.2f}\")"
]
},
@ -282,7 +282,7 @@
"source": [
"## آزمون فرضیه\n",
"\n",
"بیایید نقش‌های مختلف در مجموعه داده‌های بازیکنان بیسبال خود را بررسی کنیم:\n"
"بیایید نقش‌های مختلف را در مجموعه داده بازیکنان بیسبال خود بررسی کنیم:\n"
]
},
{
@ -298,7 +298,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"بیایید فرضیه‌ای را بررسی کنیم که بازیکنان اول بیش از بازیکنان دوم قد بلندتر هستند. ساده‌ترین راه برای این کار تست فواصل اطمینان است:\n"
"بیایید فرضیه‌ای را آزمایش کنیم که بیان می‌کند اول‌بیسمن‌ها قد بلندتری نسبت به دوم‌بیسمن‌ها دارند. ساده‌ترین روش برای انجام این کار، آزمون فاصله اطمینان است:\n"
]
},
{
@ -317,7 +317,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"می‌توانیم ببینیم که بازه‌ها همپوشانی ندارند.\n",
ا می‌بینیم که بازه‌ها همپوشانی ندارند.\n",
"\n",
"یک روش آماری صحیح‌تر برای اثبات فرضیه استفاده از **آزمون t دانشجو** است:\n"
]
@ -338,9 +338,9 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"دو مقداری که توسط تابع `ttest_ind` بازگردانده می‌شوند عبارتند از:\n",
"* مقدار p-value را می‌توان به عنوان احتمال برابری میانگین دو توزیع در نظر گرفت. در مورد ما، این مقدار بسیار کم است، که به این معنی است که شواهد قوی‌ای وجود دارد که حمایت می‌کند اولی‌ها قد بلندتری دارند.\n",
"* مقدار t-value مقدار میانی اختلاف میانگین نرمال‌شده است که در آزمون t استفاده می‌شود و با یک مقدار آستانه برای یک مقدار اطمینان معین مقایسه می‌گردد.\n"
"دو مقدار برگردانده شده توسط تابع `ttest_ind` عبارتند از:\n",
"* مقدار p-value را می‌توان به عنوان احتمال داشتن میانگین یکسان دو توزیع در نظر گرفت. در مورد ما، این مقدار بسیار کم است که به معنای وجود شواهد قوی مبنی بر اینکه بازیکنان اول بیس‌بال قدبلندتر هستند، می‌باشد.\n",
"* مقدار t-value مقدار میانی تفاوت میانگین نرمال‌شده است که در آزمون t استفاده می‌شود و با مقدار آستانه‌ای برای یک مقدار اطمینان مشخص مقایسه می‌شود.\n"
]
},
{
@ -349,7 +349,7 @@
"source": [
"## شبیه‌سازی توزیع نرمال با قضیه حد مرکزی\n",
"\n",
"مولد شبه‌تصادفی در پایتون برای ارائه توزیع یکنواخت طراحی شده است. اگر بخواهیم یک مولد برای توزیع نرمال ایجاد کنیم، می‌توانیم از قضیه حد مرکزی استفاده کنیم. برای به‌دست آوردن یک مقدار با توزیع نرمال، تنها کافی است میانگین نمونه‌ای که از توزیع یکنواخت تولید شده است را محاسبه کنیم.\n"
"مولد شبه‌تصادفی در پایتون به گونه‌ای طراحی شده است که یک توزیع یکنواخت به ما بدهد. اگر بخواهیم یک مولد برای توزیع نرمال بسازیم، می‌توانیم از قضیه حد مرکزی استفاده کنیم. برای به‌دست آوردن یک مقدار با توزیع نرمال، کافی است میانگین نمونه‌ای تولید شده از توزیع یکنواخت را محاسبه کنیم.\n"
]
},
{
@ -373,9 +373,9 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"## همبستگی و شرکت بیسبال شرور\n",
"## همبستگی و شرکت بیسبال شرور \n",
"\n",
"همبستگی به ما اجازه می‌دهد روابط بین دنباله‌های داده را پیدا کنیم. در مثال اسباب‌بازی ما، فرض کنیم یک شرکت بیسبال شرور وجود دارد که به بازیکنانش بر اساس قدشان پول پرداخت می‌کند - هر چقدر بازیکن بلندقدتر باشد، پول بیشتری می‌گیرد. فرض کنید حقوق پایه ۱۰۰۰ دلار است و یک پاداش اضافی از ۰ تا ۱۰۰ دلار بسته به قد وجود دارد. بازیکنان واقعی MLB را می‌گیریم و حقوق خیالی آنها را محاسبه می‌کنیم:\n"
"همبستگی به ما اجازه می‌دهد ارتباطات بین دنباله‌های داده را پیدا کنیم. در مثال اسباب‌بازی ما، بیایید فرض کنیم یک شرکت بیسبال شرور وجود دارد که به بازیکنانش بر اساس قدشان پول می‌دهد - هر چه بازیکن قد بلندتری داشته باشد، پول بیشتری دریافت می‌کند. فرض کنیم حقوق پایه ۱۰۰۰ دلار است و یک پاداش اضافی از ۰ تا ۱۰۰ دلار وجود دارد که بستگی به قد دارد. ما بازیکنان واقعی MLB را می‌گیریم و حقوق تخیلی آنها را محاسبه می‌کنیم: \n"
]
},
{
@ -384,7 +384,7 @@
"metadata": {},
"outputs": [],
"source": [
"heights = df['Height'].fillna(method='pad')\n",
"heights = df['Height'].ffill()\n",
"salaries = 1000+(heights-heights.min())/(heights.max()-heights.mean())*100\n",
"print(list(zip(heights, salaries))[:10])"
]
@ -393,7 +393,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"حالا بیایید کوواریانس و همبستگی آن دنباله‌ها را محاسبه کنیم. `np.cov` به ما ماتریس کوواریانس می‌دهد، که یک تعمیم کوواریانس به چند متغیر است. عنصر $M_{ij}$ از ماتریس کوواریانس $M$ همبستگی بین متغیرهای ورودی $X_i$ و $X_j$ است، و مقادیر قطری $M_{ii}$ واریانس $X_{i}$ می‌باشند. به‌طور مشابه، `np.corrcoef` به ما ماتریس هم‌بستگی می‌دهد.\n"
"حالا کوواریانس و همبستگی آن دنباله‌ها را محاسبه می‌کنیم. `np.cov` به ما چیزی به نام **ماتریس کوواریانس** می‌دهد که تعمیمی از کوواریانس برای چند متغیر است. عنصر $M_{ij}$ از ماتریس کوواریانس $M$ همبستگی بین متغیرهای ورودی $X_i$ و $X_j$ است، و مقادیر قطری $M_{ii}$ واریانس $X_{i}$ است. به طور مشابه، `np.corrcoef` به ما **ماتریس همبستگی** را می‌دهد.\n"
]
},
{
@ -411,7 +411,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"همبستگی برابر با ۱ به این معنی است که یک **رابطه خطی** قوی بین دو متغیر وجود دارد. می‌توانیم رابطه خطی را به صورت بصری با رسم یکی از مقادیر در مقابل دیگری مشاهده کنیم:\n"
"ضریب همبستگی برابر با ۱ به این معنی است که رابطه **خطی** قوی بین دو متغیر وجود دارد. ما می‌توانیم رابطه خطی را با رسم یکی از مقادیر نسبت به دیگری به صورت بصری مشاهده کنیم:\n"
]
},
{
@ -430,7 +430,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"بیایید ببینیم چه اتفاقی می‌افتد اگر رابطه خطی نباشد. فرض کنید شرکت ما تصمیم گرفته است وابستگی خطی آشکار بین قدها و حقوق‌ها را پنهان کند و مقداری غیرخطی بودن، مانند `sin`، به فرمول اضافه کند:\n"
"بیایید ببینیم چه اتفاقی می‌افتد اگر رابطه خطی نباشد. فرض کنیم شرکت ما تصمیم گرفته است وابستگی خطی آشکار بین قدها و حقوق‌ها را پنهان کند و مقداری غیرخطی بودن مانند `sin` را در فرمول وارد کند:\n"
]
},
{
@ -447,7 +447,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"در این مورد، همبستگی کمی کمتر است، اما هنوز نسبتاً بالا است. حالا، برای این که رابطه کمتر آشکار باشد، ممکن است بخواهیم با افزودن یک متغیر تصادفی به حقوق، مقداری تصادفی بودن اضافی ایجاد کنیم. بیایید ببینیم چه اتفاقی می‌افتد:\n"
"در این حالت، همبستگی کمی کمتر است، اما هنوز هم نسبتاً بالا باقی مانده است. حالا برای این‌که رابطه حتی کمتر آشکار باشد، ممکن است بخواهیم با اضافه کردن یک متغیر تصادفی به حقوق، مقداری تصادفی بودن اضافی به داده‌ها اضافه کنیم. ببینیم چه اتفاقی می‌افتد:\n"
]
},
{
@ -476,9 +476,9 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"> آیا می‌توانید حدس بزنید چرا نقاط به این شکل در خطوط عمودی قرار گرفته‌اند؟\n",
"> می‌توانید حدس بزنید چرا نقاط به این صورت در خطوط عمودی قرار گرفته‌اند؟\n",
"\n",
"ما همبستگی بین یک مفهوم مصنوعی مهندسی‌شده مانند حقوق و متغیر مشاهده‌شده *قد* را مشاهده کرده‌ایم. بیایید ببینیم آیا دو متغیر مشاهده‌شده، مانند قد و وزن، نیز با یکدیگر همبسته هستند یا خیر:\n"
"ما همبستگی بین یک مفهوم مصنوعی مهندسی شده مانند حقوق و متغیر مشاهده شده *قد* را مشاهده کرده‌ایم. بیایید ببینیم آیا دو متغیر مشاهده شده مانند قد و وزن هم همبستگی دارند یا خیر:\n"
]
},
{
@ -494,11 +494,11 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"متأسفانه، ما هیچ نتیجه‌ای نگرفتیم - فقط چند مقدار عجیب `nan` وجود داشت. این به این دلیل است که برخی از مقادیر در سری ما تعریف نشده‌اند، که به صورت `nan` نمایش داده می‌شوند، و این باعث می‌شود نتیجه عملیات نیز تعریف نشده باشد. با نگاه به ماتریس می‌توان دید که ستون `Weight` مشکل‌ساز است، زیرا همبستگی خودی بین مقادیر `Height` محاسبه شده است.\n",
"متأسفانه، نتیجه‌ای نگرفتیم - فقط چند مقدار عجیب `nan` داشتیم. این به این دلیل است که برخی از مقادیر در سری ما تعریف نشده‌اند، که به صورت `nan` نمایش داده می‌شوند و باعث می‌شود نتیجه عملیات نیز تعریف نشده باشد. با نگاه به ماتریس می‌توانیم ببینیم که ستون `Weight` مشکل‌ساز است، چون همبستگی خودی بین مقادیر `Height` محاسبه شده است.\n",
"\n",
"> این مثال اهمیت **آماده‌سازی داده‌ها** و **پاک‌سازی** را نشان می‌دهد. بدون داده‌های مناسب نمی‌توانیم هیچ چیزی محاسبه کنیم.\n",
"> این مثال اهمیت **آماده‌سازی داده‌ها** و **پاک‌سازی** را نشان می‌دهد. بدون داده مناسب نمی‌توانیم هیچ چیزی محاسبه کنیم.\n",
"\n",
"بیایید از متد `fillna` استفاده کنیم تا مقادیر گمشده را پر کنیم و همبستگی را محاسبه کنیم: \n"
"بیایید از متد `fillna` برای پر کردن مقادیر گمشده استفاده کنیم و همبستگی را محاسبه کنیم:\n"
]
},
{
@ -507,14 +507,14 @@
"metadata": {},
"outputs": [],
"source": [
"np.corrcoef(df['Height'].fillna(method='pad'), df['Weight'])"
"np.corrcoef(df['Height'].ffill(), df['Weight'])"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"در واقع همبستگی وجود دارد، اما آنقدر قوی نیست که در مثال مصنوعی ما دیده شود. در حقیقت، اگر به نمودار پراکندگی یک مقدار نسبت به مقدار دیگر نگاه کنیم، رابطه بسیار کمتر واضح خواهد بود:\n"
"واقعاً همبستگی وجود دارد، اما نه به شدت مثالی که به صورت مصنوعی ساختیم. واقعاً اگر به نمودار پراکندگی یک مقدار نسبت به مقدار دیگر نگاه کنیم، رابطه خیلی کمتر واضح خواهد بود:\n"
]
},
{
@ -537,14 +537,14 @@
"source": [
"## نتیجه‌گیری\n",
"\n",
"در این نوت‌بوک یاد گرفتیم چگونه عملیات پایه‌ای روی داده‌ها انجام داده و توابع آماری را محاسبه کنیم. اکنون می‌دانیم چگونه از مجموعه‌ای قوی از ریاضیات و آمار برای اثبات برخی فرضیات استفاده کنیم و چگونه بازه‌های اطمینان را برای متغیرهای دلخواه با توجه به نمونه داده محاسبه کنیم.\n"
"در این دفترچه یادداشت آموختیم که چگونه عملیات پایه‌ای روی داده‌ها انجام دهیم تا توابع آماری را محاسبه کنیم. اکنون می‌دانیم چگونه از یک سازوکار ریاضی و آماری قوی برای اثبات برخی فرضیات استفاده کنیم و چگونه فواصل اطمینان را برای متغیرهای دلخواه با توجه به نمونه‌ای از دادهها محاسبه کنیم.\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"---\n\n<!-- CO-OP TRANSLATOR DISCLAIMER START -->\n**اعلان مسئولیت**: \nاین سند با استفاده از خدمات ترجمه هوش مصنوعی [Co-op Translator](https://github.com/Azure/co-op-translator) ترجمه شده است. در حالی که ما تلاش داریم دقت را حفظ کنیم، لطفاً توجه داشته باشید که ترجمه‌های خودکار ممکن است حاوی خطا یا نادرستی باشند. سند اصلی به زبان بومی آن باید به‌عنوان منبع معتبر در نظر گرفته شود. برای اطلاعات حیاتی، استفاده از ترجمه حرفه‌ای انسانی توصیه می‌شود. ما مسئول هیچ گونه سوءتفاهم یا برداشت نادرستی که از استفاده این ترجمه نشأت گیرد، نیستیم.\n<!-- CO-OP TRANSLATOR DISCLAIMER END -->\n"
"---\n\n<!-- CO-OP TRANSLATOR DISCLAIMER START -->\n**سلب مسئولیت**:\nاین سند با استفاده از سرویس ترجمه هوش مصنوعی [Co-op Translator](https://github.com/Azure/co-op-translator) ترجمه شده است. در حالی که ما در تلاش برای دقت هستیم، لطفاً توجه داشته باشید که ترجمه‌های خودکار ممکن است شامل خطاها یا نادرستی‌هایی باشند. سند اصلی به زبان مادری خود باید به عنوان منبع معتبر در نظر گرفته شود. برای اطلاعات حیاتی، ترجمه حرفه‌ای انسانی توصیه می‌شود. ما در قبال هرگونه سوء تفاهم یا برداشت نادرست ناشی از استفاده از این ترجمه مسئولیتی نداریم.\n<!-- CO-OP TRANSLATOR DISCLAIMER END -->\n"
]
}
],
@ -568,12 +568,6 @@
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.9.6"
},
"coopTranslator": {
"original_hash": "0f899e3c5019f948e7c787b22f3b2304",
"translation_date": "2026-01-16T09:14:56+00:00",
"source_file": "1-Introduction/04-stats-and-probability/notebook.ipynb",
"language_code": "fa"
}
},
"nbformat": 4,

@ -4,11 +4,11 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"# برآورد همه‌گیری کووید-۱۹\n",
"# برآورد بیماری همه‌گیر COVID-19\n",
"\n",
"## بارگذاری داده‌ها\n",
"\n",
"ما از داده‌های افراد مبتلا به کووید-۱۹ استفاده خواهیم کرد که توسط [مرکز علوم و مهندسی سیستم‌ها](https://systems.jhu.edu/) (CSSE) در [دانشگاه جانز هاپکینز](https://jhu.edu/) ارائه شده است. مجموعه داده در [این مخزن گیت‌هاب](https://github.com/CSSEGISandData/COVID-19) موجود است.\n"
"ما از داده‌های افراد مبتلا به COVID-19 استفاده خواهیم کرد که توسط [مرکز علوم سیستم‌ها و مهندسی](https://systems.jhu.edu/) (CSSE) در [دانشگاه جانهاپکینز](https://jhu.edu/) ارائه شده است. مجموعه دادهها در [این مخزن گیت‌هاب](https://github.com/CSSEGISandData/COVID-19) در دسترس است.\n"
]
},
{
@ -27,7 +27,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
ا می‌توانیم جدیدترین داده‌ها را مستقیماً از گیت‌هاب با استفاده از `pd.read_csv` بارگذاری کنیم. اگر به دلیلی داده‌ها در دسترس نبودند، همیشه می‌توانید نسخه کپی موجود محلی در پوشه `data` را استفاده کنید - فقط کافی است خط زیر که `base_url` را تعریف می‌کند، از حالت کامنت خارج کنید:\n"
"می‌توانیم جدیدترین داده‌ها را مستقیماً از گیت‌هاب با استفاده از `pd.read_csv` بارگذاری کنیم. اگر به هر دلیلی داده‌ها در دسترس نبودند، همیشه می‌توانید از نسخه موجود محلی در پوشه `data` استفاده کنید - فقط کافی است خط زیر که `base_url` را تعریف می‌کند، از حالت کامنت خارج کنید:\n"
]
},
{
@ -48,7 +48,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"بیایید اکنون داده‌های افراد آلوده را بارگذاری کنیم و ببینیم داده‌ها چگونه به نظر می‌رسند:\n"
"بیایید حالا داده‌های افراد آلوده را بارگذاری کنیم و ببینیم داده‌ها چگونه به نظر می‌رسند:\n"
]
},
{
@ -265,7 +265,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"ما می‌توانیم ببینیم که هر ردیف از جدول، تعداد افراد مبتلا را برای هر کشور و/یا استان تعریف می‌کند و ستون‌ها مربوط به تاریخ‌ها هستند. جداول مشابهی را می‌توان برای داده‌های دیگر، مانند تعداد بهبودیافته‌ها و تعداد مرگ‌ومیرها، بارگذاری کرد.\n"
"ما می‌توانیم ببینیم که هر ردیف از جدول تعداد افراد مبتلا را برای هر کشور و/یا استان تعیین می‌کند، و ستون‌ها مربوط به تاریخ‌ها هستند. جداول مشابهی می‌توانند برای داده‌های دیگر، مانند تعداد بهبود یافته‌ها و تعداد مرگ و میرها بارگذاری شوند.\n"
]
},
{
@ -282,9 +282,9 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"## معنی کردن داده‌ها\n",
"## فهم داده‌ها\n",
"\n",
"از جدول بالا نقش ستون استان چندان واضح نیست. بیایید مقادیر مختلف موجود در ستون `Province/State` را ببینیم:\n"
"از جدول بالا نقش ستون استان واضح نیست. بیایید مقادیر مختلف موجود در ستون `Province/State` را بررسی کنیم:\n"
]
},
{
@ -322,7 +322,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"از روی نام‌ها می‌توان نتیجه گرفت که کشورهایی مانند استرالیا و چین تقسیم‌بندی جزئی‌تری بر اساس استان‌ها دارند. بیایید دنبال اطلاعاتی درباره چین بگردیم تا نمونه را ببینیم:\n"
"از روی نام‌ها می‌توان استنباط کرد که کشورهایی مانند استرالیا و چین تفکیک‌های جزئی‌تر بر اساس استان‌ها دارند. بیایید برای مثال اطلاعاتی درباره چین جستجو کنیم:\n"
]
},
{
@ -1321,9 +1321,9 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"## پیش‌پردازش داده‌ها\n",
"## پیش‌پردازش داده‌ها \n",
"\n",
"ما علاقه‌ای به شکستن کشورهای مختلف به بخش‌های کوچک‌تر نداریم، بنابراین ابتدا این تفکیک را حذف می‌کنیم و اطلاعات همه بخش‌ها را با هم جمع می‌کنیم تا اطلاعات کلی کشور به دست آید. این کار را می‌توان با استفاده از `groupby` انجام داد:\n"
"ما علاقه‌ای به شکستن کشورهای به قلمروهای بیشتر نداریم، بنابراین ابتدا این تفکیک را حذف می‌کنیم و اطلاعات همه‌ی قلمروها را با هم جمع می‌کنیم تا اطلاعات کل کشور به دست آید. این کار را می‌توان با استفاده از `groupby` انجام داد:\n"
]
},
{
@ -1578,7 +1578,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"می‌توانید ببینید که به دلیل استفاده از `groupby` همه DataFrameها اکنون بر اساس کشور/منطقه ایندکس شده‌اند. بنابراین می‌توانیم با استفاده از `.loc` به داده‌های یک کشور خاص دسترسی پیدا کنیم:|\n"
"می‌توانید ببینید که به دلیل استفاده از `groupby` اکنون تمام DataFrameها بر اساس Country/Region ایندکس شده‌اند. بنابراین می‌توانیم با استفاده از `.loc` به داده‌های یک کشور خاص دسترسی پیدا کنیم:|\n"
]
},
{
@ -1607,7 +1607,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"> **توجه** چگونه از `[3:]` برای حذف سه عنصر اول یک دنباله که شامل متادیتای غیرتاریخی (ستون‌های استان/ایالت و موقعیت جغرافیایی) هستند، استفاده می‌کنیم. همچنین می‌توانیم آن سه ستون را کاملاً حذف کنیم:\n"
"> **توجه کنید** چگونه از `[3:]` برای حذف سه عنصر اول یک دنباله که شامل فراداده‌های غیرتاریخی (ستون‌های استان/ایالت و موقعیت جغرافیایی) است، استفاده می‌کنیم. همچنین می‌توانیم هر سه ستون را به طور کامل حذف کنیم:\n"
]
},
{
@ -1627,7 +1627,7 @@
"source": [
"## بررسی داده‌ها\n",
"\n",
"بیایید اکنون به بررسی یک کشور خاص بپردازیم. بیایید یک فریم ایجاد کنیم که حاوی داده‌های عفونت‌ها با شاخص تاریخ باشد:\n"
"بیایید اکنون به بررسی یک کشور خاص بپردازیم. بیایید یک فریم بسازیم که حاوی داده‌های مبتلایان بر حسب تاریخ باشد:\n"
]
},
{
@ -1793,7 +1793,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"حال بیایید تعداد افراد جدید مبتلا شده در هر روز را محاسبه کنیم. این به ما اجازه می‌دهد سرعت پیشرفت بیماری همه‌گیر را مشاهده کنیم. آسان‌ترین روش برای این کار استفاده از `diff` است:\n"
"اکنون بیایید تعداد افراد جدید مبتلا شده را هر روز محاسبه کنیم. این به ما اجازه می‌دهد سرعت پیشرفت بیماری همه‌گیر را ببینیم. آسان‌ترین راه برای انجام این کار استفاده از `diff` است:\n"
]
},
{
@ -1823,7 +1823,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"می‌توانیم نوسانات زیادی در داده‌ها ببینیم. بیایید نگاهی دقیق‌تر به یکی از ماه‌ها بیاندازیم:\n"
ا می‌توانیم نوسانات زیادی در داده‌ها ببینیم. بیایید نگاهی دقیق‌تر به یکی از ماه‌ها بیندازیم:\n"
]
},
{
@ -1852,7 +1852,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"به وضوح به نظر می‌رسد که نوسانات هفتگی در داده‌ها وجود دارد. از آنجایی که می‌خواهیم بتوانیم روندها را مشاهده کنیم، منطقی است که برای نرم کردن نمودار، میانگین متحرک را محاسبه کنیم (یعنی برای هر روز، مقدار متوسط چند روز گذشته را محاسبه خواهیم کرد):\n"
"به وضوح به نظر می‌رسد که نوسانات هفتگی در داده‌ها وجود دارد. چون می‌خواهیم بتوانیم روندها را ببینیم، منطقی است که منحنی را با محاسبه میانگین متحرک (یعنی برای هر روز میانگین مقدار چند روز قبل را حساب کنیم) هموار کنیم:\n"
]
},
{
@ -1882,7 +1882,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"برای اینکه بتوانیم چندین کشور را با هم مقایسه کنیم، ممکن است بخواهیم جمعیت کشور را در نظر بگیریم و درصد افراد آلوده را نسبت به جمعیت کشور مقایسه کنیم. برای دریافت جمعیت کشور، بیایید مجموعه داده‌های کشورهای را بارگذاری کنیم:\n"
"برای اینکه بتوان چند کشور را با هم مقایسه کرد، ممکن است بخواهیم جمعیت کشور را در نظر بگیریم و درصد افراد آلوده را نسبت به جمعیت کشور مقایسه کنیم. برای به دست آوردن جمعیت کشور، بیایید مجموعه داده‌های کشورها را بارگذاری کنیم:\n"
]
},
{
@ -2153,7 +2153,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"از آنجا که این مجموعه داده‌ها شامل اطلاعات هر دو کشورها و استان‌ها است، برای به‌دست آوردن جمعیت کل کشور باید کمی هوشمندانه عمل کنیم:\n"
"چون این مجموعه داده‌ها شامل اطلاعات مربوط به هر دو کشور و استان‌ها است، برای به‌دست آوردن جمعیت کل کشور باید کمی باهوش باشیم:\n"
]
},
{
@ -2261,13 +2261,15 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"## محاسبه‌ی $R_t$\n",
"\n",
"برای فهمیدن میزان واگیری بیماری، ما به **عدد بازتولید پایه** $R_0$ نگاه می‌کنیم، که نشان‌دهنده تعداد افرادی است که یک فرد آلوده شده، به طور متوسط، آن‌ها را آلوده می‌کند. زمانی که $R_0$ بیش از ۱ باشد، احتمال گسترش اپیدمی زیاد است.\n",
"## محاسبه $R_t$\n",
"\n",
"$R_0$ خود یک ویژگی مربوط به بیماری است و برخی از تدابیر حفاظتی که افراد ممکن است به منظور کاهش سرعت همه‌گیری به کار گیرند را در نظر نمی‌گیرد. در طول پیشرفت همه‌گیری، ما می‌توانیم عدد بازتولید $R_t$ را در هر زمان معین $t$ تخمین بزنیم. نشان داده شده است که می‌توان این عدد را به طور تقریبی با گرفتن پنجره‌ای به اندازه ۸ روز و محاسبه $$R_t=\\frac{I_{t-7}+I_{t-6}+I_{t-5}+I_{t-4}}{I_{t-3}+I_{t-2}+I_{t-1}+I_t}$$ بدست آورد، که در آن $I_t$ تعداد افراد تازه آلوده در روز $t$ است.\n",
"برای دیدن میزان واگیری بیماری، به **عدد تکثیر پایه** $R_0$ نگاه می‌کنیم، که نشان‌دهنده تعداد افرادی است که یک فرد آلوده شده، می‌تواند بیشتر آلوده کند. زمانی که $R_0$ بزرگ‌تر از ۱ باشد، احتمال شیوع اپیدمی بیشتر است.\n",
"\n",
"بیایید $R_t$ را برای داده‌های همه‌گیری خود محاسبه کنیم. برای این کار، یک پنجره‌ی گردشی از ۸ مقدار `ninfected` می‌گیریم و تابع بالا را برای محاسبه نسبت مذکور اعمال می‌کنیم:\n"
"$R_0$ یک ویژگی ذاتی بیماری است و برخی اقدامات حفاظتی که مردم ممکن است برای کند کردن روند همه‌گیری انجام دهند را در نظر نمی‌گیرد. در طول پیشرفت همه‌گیری، می‌توان عدد تکثیر $R_t$ را در هر زمان داده شده $t$ برآورد کرد. نشان داده شده است که این عدد را می‌توان به طور تقریبی با انتخاب یک پنجره ۸ روزه محاسبه کرد، و فرمول زیر را برای محاسبه به کار برد: $$R_t=\\frac{I_{t-7}+I_{t-6}+I_{t-5}+I_{t-4}}{I_{t-3}+I_{t-2}+I_{t-1}+I_t}$$\n",
"که در آن $I_t$ تعداد افراد جدید آلوده‌شده در روز $t$ است.\n",
"\n",
"بیایید $R_t$ را برای داده‌های همه‌گیری خود محاسبه کنیم. برای این کار، ما یک پنجره متحرک ۸ تایی از مقادیر `ninfected` در نظر می‌گیریم و تابع نسبت بالا را اعمال می‌کنیم:\n"
]
},
{
@ -2297,9 +2299,9 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"می‌توانید ببینید که در نمودار برخی شکاف‌ها وجود دارد. این‌ها می‌توانند به دلیل `NaN` باشند، یا اگر مقادیر `inf` در مجموعه داده وجود داشته باشد. مقدار `inf` ممکن است به دلیل تقسیم بر صفر ایجاد شده باشد، و `NaN` می‌تواند نشان‌دهنده داده مفقود شده یا نبود داده برای محاسبه نتیجه باشد (مانند ابتدای قاب زمانی ما که پنجره حرکت با عرض ۸ هنوز در دسترس نیست). برای زیباتر کردن نمودار، باید این مقادیر را با استفاده از توابع `replace` و `fillna` پر کنیم.\n",
"می‌توانید ببینید که در نمودار فاصله‌هایی وجود دارد. این‌ها می‌توانند ناشی از `NaN` باشند، اگر مقادیر `inf` در مجموعه داده وجود داشته باشد. `inf` ممکن است ناشی از تقسیم بر صفر باشد و `NaN` می‌تواند نشان دهنده داده‌های گمشده یا نبود داده برای محاسبه نتیجه باشد (مانند ابتدای فریم ما که پنجره متحرک به عرض ۸ هنوز در دسترس نیست). برای اینکه نمودار زیباتر شود، باید این مقادیر را با استفاده از توابع `replace` و `fillna` پر کنیم.\n",
"\n",
"بیایید بیشتر به ابتدای پاندمی نگاه کنیم. همچنین مقادیر محور y را محدود می‌کنیم تا فقط مقادیر کمتر از ۶ نمایش داده شوند، تا بهتر دیده شوند، و خط افقی در مقدار ۱ رسم می‌کنیم.\n"
"بیایید بیشتر به ابتدای پاندمی نگاه کنیم. همچنین مقادیر محور y را محدود می‌کنیم تا فقط مقادیر زیر ۶ نمایش داده شوند تا بهتر دیده شود، و خط افقی را در مقدار ۱ رسم کنیم.\n"
]
},
{
@ -2330,7 +2332,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"یک شاخص جالب دیگر در مورد بیماری همه‌گیر، **مشتق** یا **تفاوت روزانه** در موارد جدید است. این شاخص به ما امکان می‌دهد به وضوح ببینیم که بیماری همه‌گیر در حال افزایش است یا کاهش.\n"
"شاخص جالب دیگری از پاندمی، **مشتق** یا **تفاوت روزانه** در موارد جدید است. این شاخص به ما امکان می‌دهد واضح ببینیم که آیا پاندمی در حال افزایش یا کاهش است.\n"
]
},
{
@ -2359,7 +2361,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"با توجه به این واقعیت که نوسانات زیادی در داده‌ها به دلیل گزارش‌دهی وجود دارد، منطقی است که با اجرای میانگین متحرک منحنی را هموار کنیم تا تصویر کلی را بدست آوریم. بیایید دوباره روی ماه‌های ابتدایی همه‌گیری تمرکز کنیم:\n"
"با توجه به این واقعیت که نوسانات زیادی در داده‌ها به دلیل گزارش‌دهی وجود دارد، منطقی است که با استفاده از میانگین متحرک منحنی را هموار کنیم تا تصویر کلی به دست آید. دوباره بیایید روی ماه‌های اول پاندمی تمرکز کنیم:\n"
]
},
{
@ -2389,26 +2391,27 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"\n",
"## چالش\n",
"\n",
"حالا وقت آن است که بیشتر با کد و داده‌ها بازی کنید! در اینجا چند پیشنهاد برای آزمایش وجود دارد:\n",
"* گسترش بیماری همه‌گیر در کشورهای مختلف را ببینید.\n",
"* نمودارهای $R_t$ را برای چندین کشور در یک نمودار برای مقایسه رسم کنید، یا چندین نمودار را کنار هم قرار دهید\n",
"* ببینید چگونه تعداد مرگ‌ها و بهبودی‌ها با تعداد مبتلایان همبستگی دارد.\n",
"* سعی کنید بفهمید یک بیماری معمولی چقدر طول می‌کشد با همبستگی بصری نرخ ابتلا و نرخ مرگ و جستجوی برخی ناهنجاری‌ها. ممکن است نیاز باشد به کشورهای مختلف نگاه کنید تا این را بفهمید.\n",
"* نرخ کشندگی را محاسبه کنید و ببینید چگونه در طول زمان تغییر می‌کند. ممکن است بخواهید طول مدت بیماری را به روز در نظر بگیرید تا یک سری زمانی را قبل از انجام محاسبات جابجا کنید.\n"
"حالا وقت آن است که بیشتر با کد و داده‌ها بازی کنید! در اینجا چند پیشنهاد وجود دارد که می‌توانید آزمایش کنید:\n",
"* گسترش همه‌گیری در کشورهای مختلف را مشاهده کنید.\n",
"* نمودارهای $R_t$ را برای چند کشور در یک نمودار برای مقایسه ترسیم کنید، یا چند نمودار را کنار هم قرار دهید.\n",
"* ببینید تعداد مرگ‌ومیر و بهبودی‌ها چگونه با تعداد موارد آلوده ارتباط دارد.\n",
"* سعی کنید بفهمید بیماری معمولاً چقدر طول می‌کشد با مقایسه بصری نرخ ابتلا و نرخ مرگ و جستجوی ناهنجاری‌ها. ممکن است لازم باشد کشورهای مختلف را بررسی کنید تا این موضوع را متوجه شوید.\n",
"* نرخ کشندگی را محاسبه کنید و ببینید چگونه در طول زمان تغییر می‌کند. ممکن است بخواهید طول بیماری به روز را در نظر بگیرید تا یکی از سری‌های زمانی را قبل از انجام محاسبات جابهجا کنید.\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## مراجع\n",
"## منابع\n",
"\n",
"ممکن است به مطالعات بیشتر درباره شیوع اپیدمی COVID در نشریات زیر مراجعه کنید:\n",
"* [مدل اسلایدینگ SIR برای برآورد Rt در طول همه‌گیری COVID](https://soshnikov.com/science/sliding-sir-model-for-rt-estimation/)، پست بلاگ توسط [دیمیتری سوشنیکوف](http://soshnikov.com)\n",
"* T.Petrova, D.Soshnikov, A.Grunin. [برآورد عدد تولیدمثل وابسته به زمان برای شیوع جهانی COVID-19](https://www.preprints.org/manuscript/202006.0289/v1). *Preprints* **2020**، 2020060289 (doi: 10.20944/preprints202006.0289.v1)\n",
"* [کد مقاله فوق در GitHub](https://github.com/shwars/SlidingSIR)\n"
"ممکن است به مطالعات بیشتر درباره شیوع اپیدمی کووید در انتشارات زیر نگاه کنید:\n",
"* [مدل اسلایدینگ SIR برای برآورد Rt در طول پاندمی کووید](https://soshnikov.com/science/sliding-sir-model-for-rt-estimation/)، نوشته وبلاگی توسط [دیمیتری سوشنیکوف](http://soshnikov.com)\n",
"* تی. پترووا، د. سوشنیکوف، آ. گرونین. [برآورد عدد بازتولید وابسته به زمان برای شیوع جهانی کووید-19](https://www.preprints.org/manuscript/202006.0289/v1). *Preprints* **2020**، 2020060289 (doi: 10.20944/preprints202006.0289.v1)\n",
"* [کد مربوط به مقاله بالا در گیت‌هاب](https://github.com/shwars/SlidingSIR)\n"
]
},
{
@ -2422,7 +2425,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"---\n\n<!-- CO-OP TRANSLATOR DISCLAIMER START -->\n**سلب مسئولیت**: \nاین سند با استفاده از خدمات ترجمه‌ی هوش مصنوعی [Co-op Translator](https://github.com/Azure/co-op-translator) ترجمه شده است. در حالی که ما برای دقت تلاش می‌کنیم، لطفاً توجه داشته باشید که ترجمه‌های خودکار ممکن است حاوی خطاها یا نادقتی‌هایی باشند. سند اصلی به زبان بومی آن باید به عنوان منبع معتبر در نظر گرفته شود. برای اطلاعات حیاتی، توصیه می‌شود از خدمات ترجمه حرفه‌ای انسانی استفاده شود. ما مسئول هیچ گونه سوء تفاهم یا برداشت نادرستی که از استفاده این ترجمه ناشی شود، نیستیم.\n<!-- CO-OP TRANSLATOR DISCLAIMER END -->\n"
"---\n\n<!-- CO-OP TRANSLATOR DISCLAIMER START -->\n**سلب مسئولیت**:\nاین سند با استفاده از سرویس ترجمه هوش مصنوعی [Co-op Translator](https://github.com/Azure/co-op-translator) ترجمه شده است. در حالی که ما در تلاش برای دقت هستیم، لطفاً توجه داشته باشید که ترجمه‌های خودکار ممکن است شامل خطاها یا نادرستی‌هایی باشند. سند اصلی به زبان مادری خود باید به عنوان منبع معتبر در نظر گرفته شود. برای اطلاعات حیاتی، ترجمه حرفه‌ای انسانی توصیه می‌شود. ما در قبال هرگونه سوء تفاهم یا برداشت نادرست ناشی از استفاده از این ترجمه مسئولیتی نداریم.\n<!-- CO-OP TRANSLATOR DISCLAIMER END -->\n"
]
}
],

@ -1,29 +1,33 @@
# پروژه تجسم داده‌های Dangerous Liaisons
# پروژه مصورسازی داده‌ها خطرناک
برای شروع، باید مطمئن شوید که NPM و Node روی دستگاه شما اجرا می‌شوند. وابستگی‌ها را نصب کنید (npm install) و سپس پروژه را به صورت محلی اجرا کنید (npm run serve):
برای شروع، باید مطمئن شوید که نسخه NPM و Node **>=20.0.0** روی دستگاه شما نصب و اجرا می‌شود. وابستگی‌ها را نصب کنید (npm install) و سپس پروژه را بهصورت محلی اجرا کنید (npm run serve):
## تنظیمات پروژه
## راه‌اندازی پروژه
```
npm install
```
### کامپایل و بارگذاری مجدد برای توسعه
### برای توسعه کامپایل و بارگذاری داغ انجام می‌دهد
```
npm run serve
```
### کامپایل و بهینه‌سازی برای تولید
### برای تولید نسخه بهینه و کوچک شده کامپایل می‌کند
```
npm run build
```
### بررسی و اصلاح فایل‌ها
### فایل‌ها را بررسی و اصلاح می‌کند
```
npm run lint
```
### سفارشی‌سازی تنظیمات
به [مرجع تنظیمات](https://cli.vuejs.org/config/) مراجعه کنید.
### پیکربندی را شخصی‌سازی کنید
مشاهده [مرجع پیکربندی](https://cli.vuejs.org/config/).
**سلب مسئولیت**:
این سند با استفاده از سرویس ترجمه هوش مصنوعی [Co-op Translator](https://github.com/Azure/co-op-translator) ترجمه شده است. در حالی که ما تلاش می‌کنیم دقت را حفظ کنیم، لطفاً توجه داشته باشید که ترجمه‌های خودکار ممکن است شامل خطاها یا نادرستی‌ها باشند. سند اصلی به زبان اصلی آن باید به عنوان منبع معتبر در نظر گرفته شود. برای اطلاعات حساس، توصیه می‌شود از ترجمه حرفه‌ای انسانی استفاده کنید. ما هیچ مسئولیتی در قبال سوء تفاهم‌ها یا تفسیرهای نادرست ناشی از استفاده از این ترجمه نداریم.
---
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**سلب مسئولیت**:
این سند با استفاده از سرویس ترجمه هوش مصنوعی [Co-op Translator](https://github.com/Azure/co-op-translator) ترجمه شده است. در حالی که ما در تلاش برای دقت هستیم، لطفاً توجه داشته باشید که ترجمه‌های خودکار ممکن است شامل خطاها یا نادرستی‌هایی باشند. سند اصلی به زبان مادری خود باید به عنوان منبع معتبر در نظر گرفته شود. برای اطلاعات حیاتی، ترجمه حرفه‌ای انسانی توصیه می‌شود. ما در قبال هرگونه سوء تفاهم یا برداشت نادرست ناشی از استفاده از این ترجمه مسئولیتی نداریم.
<!-- CO-OP TRANSLATOR DISCLAIMER END -->

@ -1,29 +1,33 @@
# پروژه تجسم داده‌های Dangerous Liaisons
# پروژه تجسم داده Dangerous Liaisons
برای شروع، باید مطمئن شوید که NPM و Node روی دستگاه شما اجرا می‌شوند. وابستگی‌ها را نصب کنید (npm install) و سپس پروژه را به صورت محلی اجرا کنید (npm run serve):
برای شروع، باید اطمینان حاصل کنید که NPM و Node با نسخه **>=20.0.0** روی سیستم شما نصب و اجرا می‌شوند. وابستگی‌ها را نصب کنید (npm install) و سپس پروژه را به صورت محلی اجرا کنید (npm run serve):
## تنظیمات پروژه
## راه‌اندازی پروژه
```
npm install
```
### کامپایل و بارگذاری مجدد برای توسعه
### کامپایل و بارگذاری سریع برای توسعه
```
npm run serve
```
### کامپایل و کوچک‌سازی برای تولید
### کامپایل و فشرده‌سازی برای تولید
```
npm run build
```
### بررسی و اصلاح فایل‌ها
### بررسی و اصلاح فایل‌ها
```
npm run lint
```
### سفارشی‌سازی تنظیمات
به [مرجع تنظیمات](https://cli.vuejs.org/config/) مراجعه کنید.
### تنظیمات سفارشی
به [مرجع پیکربندی](https://cli.vuejs.org/config/) مراجعه کنید.
**سلب مسئولیت**:
این سند با استفاده از سرویس ترجمه هوش مصنوعی [Co-op Translator](https://github.com/Azure/co-op-translator) ترجمه شده است. در حالی که ما تلاش می‌کنیم دقت را حفظ کنیم، لطفاً توجه داشته باشید که ترجمه‌های خودکار ممکن است شامل خطاها یا نادرستی‌ها باشند. سند اصلی به زبان اصلی آن باید به عنوان منبع معتبر در نظر گرفته شود. برای اطلاعات حساس، توصیه می‌شود از ترجمه انسانی حرفه‌ای استفاده کنید. ما مسئولیتی در قبال سوء تفاهم‌ها یا تفسیرهای نادرست ناشی از استفاده از این ترجمه نداریم.
---
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**سلب مسئولیت**:
این سند با استفاده از سرویس ترجمه هوش مصنوعی [Co-op Translator](https://github.com/Azure/co-op-translator) ترجمه شده است. در حالی که ما در تلاش برای دقت هستیم، لطفاً توجه داشته باشید که ترجمه‌های خودکار ممکن است شامل خطاها یا نادرستی‌هایی باشند. سند اصلی به زبان مادری خود باید به عنوان منبع معتبر در نظر گرفته شود. برای اطلاعات حیاتی، ترجمه حرفه‌ای انسانی توصیه می‌شود. ما در قبال هرگونه سوء تفاهم یا برداشت نادرست ناشی از استفاده از این ترجمه مسئولیتی نداریم.
<!-- CO-OP TRANSLATOR DISCLAIMER END -->

@ -12,8 +12,8 @@
"language_code": "ur"
},
"1-Introduction/01-defining-data-science/notebook.ipynb": {
"original_hash": "8f5eb7b3f7cc89e6d98fb32e1de65dec",
"translation_date": "2026-02-28T08:13:52+00:00",
"original_hash": "8eb07e3d899aaba7ea9c9ec9b5aa2850",
"translation_date": "2026-07-17T21:15:26+00:00",
"source_file": "1-Introduction/01-defining-data-science/notebook.ipynb",
"language_code": "ur"
},
@ -42,8 +42,8 @@
"language_code": "ur"
},
"1-Introduction/03-defining-data/README.md": {
"original_hash": "12339119c0165da569a93ddba05f9339",
"translation_date": "2025-09-06T06:48:52+00:00",
"original_hash": "7217c6f9eb464d4ff4bae6c036ab53cb",
"translation_date": "2026-07-17T21:19:58+00:00",
"source_file": "1-Introduction/03-defining-data/README.md",
"language_code": "ur"
},
@ -65,6 +65,12 @@
"source_file": "1-Introduction/04-stats-and-probability/assignment.md",
"language_code": "ur"
},
"1-Introduction/04-stats-and-probability/notebook.ipynb": {
"original_hash": "0c77e104b29c723287bf11b773fcc5d5",
"translation_date": "2026-07-17T21:16:27+00:00",
"source_file": "1-Introduction/04-stats-and-probability/notebook.ipynb",
"language_code": "ur"
},
"1-Introduction/README.md": {
"original_hash": "696a8474a01054281704cbfb09148949",
"translation_date": "2025-08-27T08:43:45+00:00",
@ -108,8 +114,8 @@
"language_code": "ur"
},
"2-Working-With-Data/07-python/notebook-covidspread.ipynb": {
"original_hash": "6335cccba01dc6ad7b15aba7a8c73f38",
"translation_date": "2026-02-28T08:15:14+00:00",
"original_hash": "da97f98781c7cd271063f605fe8d71d0",
"translation_date": "2026-07-17T21:14:56+00:00",
"source_file": "2-Working-With-Data/07-python/notebook-covidspread.ipynb",
"language_code": "ur"
},
@ -192,14 +198,14 @@
"language_code": "ur"
},
"3-Data-Visualization/13-meaningful-visualizations/solution/README.md": {
"original_hash": "5c51a54dd89075a7a362890117b7ed9e",
"translation_date": "2025-08-27T10:12:05+00:00",
"original_hash": "2b3b2632bb02af608ca60be828e8097d",
"translation_date": "2026-07-17T21:20:05+00:00",
"source_file": "3-Data-Visualization/13-meaningful-visualizations/solution/README.md",
"language_code": "ur"
},
"3-Data-Visualization/13-meaningful-visualizations/starter/README.md": {
"original_hash": "5c51a54dd89075a7a362890117b7ed9e",
"translation_date": "2025-08-27T10:11:29+00:00",
"original_hash": "2b3b2632bb02af608ca60be828e8097d",
"translation_date": "2026-07-17T21:20:01+00:00",
"source_file": "3-Data-Visualization/13-meaningful-visualizations/starter/README.md",
"language_code": "ur"
},

File diff suppressed because one or more lines are too long

@ -1,70 +1,71 @@
# ڈیٹا کی تعریف
|![ Sketchnote by [(@sketchthedocs)](https://sketchthedocs.dev) ](../../sketchnotes/03-DefiningData.png)|
|![ اسکیچ نوٹ بذریعہ [(@sketchthedocs)](https://sketchthedocs.dev) ](../../sketchnotes/03-DefiningData.png)|
|:---:|
|ڈیٹا کی تعریف - _Sketchnote by [@nitya](https://twitter.com/nitya)_ |
|ڈیٹا کی تعریف - _اسکیچ نوٹ بذریعہ [@nitya](https://twitter.com/nitya)_ |
ڈیٹا حقائق، معلومات، مشاہدات اور پیمائش ہیں جو دریافتیں کرنے اور باخبر فیصلوں کی حمایت کے لیے استعمال ہوتے ہیں۔ ایک ڈیٹا پوائنٹ ڈیٹا کا ایک واحد یونٹ ہوتا ہے جو ڈیٹا سیٹ میں موجود ہوتا ہے، جو کہ ڈیٹا پوائنٹس کا مجموعہ ہوتا ہے۔ ڈیٹا سیٹس مختلف فارمیٹس اور ساخت میں آ سکتے ہیں، اور عام طور پر اس کے ماخذ یا جہاں سے ڈیٹا آیا ہے، پر مبنی ہوں گے۔ مثال کے طور پر، کسی کمپنی کی ماہانہ آمدنی اسپریڈشیٹ میں ہو سکتی ہے لیکن اسمارٹ واچ سے گھنٹہ وار دل کی دھڑکن کا ڈیٹا [JSON](https://stackoverflow.com/a/383699) فارمیٹ میں ہو سکتا ہے۔ یہ عام بات ہے کہ ڈیٹا سائنسدان ایک ڈیٹا سیٹ کے اندر مختلف قسم کے ڈیٹا کے ساتھ کام کرتے ہیں۔
ڈیٹا حقائق، معلومات، مشاہدات اور پیمائشیں ہیں جو دریافت کرنے اور باخبر فیصلوں کی حمایت کے لیے استعمال ہوتی ہیں۔ ایک ڈیٹا پوائنٹ ڈیٹا کے ایک سیٹ کے اندر ایک واحد ڈیٹا یونٹ ہوتا ہے، جو ڈیٹا پوائنٹس کا مجموعہ ہوتا ہے۔ ڈیٹا سیٹس مختلف فارمیٹس اور ساخت میں ہو سکتے ہیں، اور عام طور پر ان کا انحصار اس کے ماخذ یا اس جگہ پر ہوتا ہے جہاں سے ڈیٹا آیا ہے۔ مثال کے طور پر، ایک کمپنی کی ماہانہ آمدنی اسپریڈشیٹ میں ہو سکتی ہے لیکن اسمارٹ واچ سے حاصل کردہ گھنٹہ وار دل کی دھڑکن کا ڈیٹا [JSON](https://stackoverflow.com/a/383699) فارمیٹ میں ہو سکتا ہے۔ ڈیٹا سائنٹسٹس کے لیے عام بات ہے کہ وہ ایک ڈیٹا سیٹ میں مختلف اقسام کے ڈیٹا کے ساتھ کام کریں۔
یہ سبق ڈیٹا کی خصوصیات اور اس کے ذرائع کے ذریعے اس کی شناخت اور درجہ بندی پر مرکوز ہے۔
یہ سبق ڈیٹا کی خصوصیات اور اس کے ماخذ کے مطابق شناخت اور درجہ بندی پر توجہ دیتا ہے۔
## [لیکچر سے پہلے کا کوئز](https://ff-quizzes.netlify.app/en/ds/quiz/4)
## [سبق سے پہلے کا کوئز](https://ff-quizzes.netlify.app/en/ds/quiz/4)
## ڈیٹا کی وضاحت کیسے کی جاتی ہے
## ڈیٹا کو کیسے بیان کیا جاتا ہے
### خام ڈیٹا
خام ڈیٹا وہ ڈیٹا ہے جو اپنے ماخذ سے اپنی ابتدائی حالت میں آیا ہے اور اس کا تجزیہ یا تنظیم نہیں کی گئی ہے۔ ڈیٹا سیٹ میں کیا ہو رہا ہے اسے سمجھنے کے لیے، اسے ایک ایسے فارمیٹ میں منظم کرنے کی ضرورت ہے جو انسانوں کے ساتھ ساتھ وہ ٹیکنالوجی بھی سمجھ سکے جو اسے مزید تجزیہ کرنے کے لیے استعمال کر سکتی ہے۔ ڈیٹا سیٹ کی ساخت بیان کرتی ہے کہ یہ کیسے منظم ہے اور اسے منظم، غیر منظم اور نیم منظم کے طور پر درجہ بندی کیا جا سکتا ہے۔ یہ ساخت کے ذرائع پر منحصر ہوگی لیکن بالآخر ان تین زمروں میں فٹ ہوگی۔
### کچا ڈیٹا
کچا ڈیٹا وہ ڈیٹا ہوتا ہے جو اپنے ماخذ سے اپنی ابتدائی حالت میں آیا ہو اور اس کا تجزیہ یا تنظیم کی گئی نہ ہو۔ اس بات کو سمجھنے کے لیے کہ ڈیٹا سیٹ کے ساتھ کیا ہو رہا ہے، اسے اس فارم میں منظم کرنا ضروری ہوتا ہے جسے انسان اور وہ ٹیکنالوجی جو اس کا مزید تجزیہ کرنا چاہتی ہے، سمجھ سکے۔ ڈیٹا سیٹ کی ساخت اس بات کی وضاحت کرتی ہے کہ یہ کیسے منظم ہوتا ہے اور اسے منظم، غیر منظم، اور نیم منظم میں تقسیم کیا جا سکتا ہے۔ ان اقسام کی ساخت ماخذ کی بنیاد پر مختلف ہوں گی لیکن آخرکار یہ تینوں اقسام میں فٹ ہوں گی۔
### مقداری ڈیٹا
مقداری ڈیٹا ڈیٹا سیٹ کے اندر عددی مشاہدات ہیں اور عام طور پر ان کا تجزیہ، پیمائش اور ریاضیاتی طور پر استعمال کیا جا سکتا ہے۔ مقداری ڈیٹا کی کچھ مثالیں ہیں: کسی ملک کی آبادی، کسی شخص کا قد یا کسی کمپنی کی سہ ماہی آمدنی۔ کچھ اضافی تجزیہ کے ساتھ، مقداری ڈیٹا کو ایئر کوالٹی انڈیکس (AQI) کے موسمی رجحانات دریافت کرنے یا عام کام کے دن پر رش کے وقت کے ٹریفک کے امکان کا اندازہ لگانے کے لیے استعمال کیا جا سکتا ہے۔
مقداری ڈیٹا ایک ڈیٹا سیٹ میں عددی مشاہدات ہوتے ہیں اور عام طور پر ان کا تجزیہ، پیمائش اور ریاضیاتی استعمال کیا جا سکتا ہے۔ مقداری ڈیٹا کی کچھ مثالیں ہیں: کسی ملک کی آبادی، کسی شخص کی قامت یا کسی کمپنی کی سہ ماہی آمدنی۔ کچھ اضافی تجزیے کے ساتھ، مقداری ڈیٹا کا استعمال موسمی رجحانات، جیسے ایئر کوالٹی انڈیکس (AQI) کی جانچ کرنے یا عمومی کام کے دن میں رش آور ٹریفک کے امکان کا اندازہ لگانے کے لیے کیا جا سکتا ہے۔
### معیاری ڈیٹا
معیاری ڈیٹا، جسے زمرہ وار ڈیٹا بھی کہا جاتا ہے، وہ ڈیٹا ہے جسے مقداری ڈیٹا کے مشاہدات کی طرح معروضی طور پر نہیں ناپا جا سکتا۔ یہ عام طور پر مختلف فارمیٹس کا موضوعی ڈیٹا ہوتا ہے جو کسی چیز، جیسے کسی پروڈکٹ یا عمل کے معیار کو حاصل کرتا ہے۔ کبھی کبھی، معیاری ڈیٹا عددی ہوتا ہے اور عام طور پر ریاضیاتی طور پر استعمال نہیں کیا جاتا، جیسے فون نمبر یا ٹائم اسٹیمپ۔ معیاری ڈیٹا کی کچھ مثالیں ہیں: ویڈیو کے تبصرے، کسی کار کا ماڈل اور برانڈ یا آپ کے قریبی دوستوں کا پسندیدہ رنگ۔ معیاری ڈیٹا کو یہ سمجھنے کے لیے استعمال کیا جا سکتا ہے کہ صارفین کو کون سی مصنوعات سب سے زیادہ پسند ہیں یا ملازمت کی درخواست کے ریزیومے میں مقبول کلیدی الفاظ کی شناخت کے لیے۔
### معیاری یا وصفیاتی ڈیٹا
معیاری ڈیٹا، جسے زمرہ جاتی ڈیٹا بھی کہا جاتا ہے، وہ ڈیٹا ہے جسے مقداری ڈیٹا کی طرح معروضی طور پر ناپا نہیں جا سکتا۔ یہ عام طور پر مختلف اقسام کے ذاتی نوعیت کے ڈیٹا ہوتے ہیں جو کسی چیز کی خصوصیت جیسے کسی پروڈکٹ یا عمل کی کوالٹی کو ظاہر کرتے ہیں۔ بعض اوقات، معیاری ڈیٹا عددی بھی ہو سکتا ہے لیکن عام طور پر ریاضی میں استعمال نہیں ہوتا، جیسے فون نمبرز یا ٹائم اسٹیمپس۔ معیاری ڈیٹا کی کچھ مثالیں: ویڈیو کمنٹس، گاڑی کا ماڈل اور میک، یا آپ کے قریبی دوست کا پسندیدہ رنگ۔ معیاری ڈیٹا کا استعمال صارفین کی پسندیدہ مصنوعات کو سمجھنے یا جاب اپلیکیشن ریزیومے میں مقبول کی ورڈز کی شناخت کے لیے کیا جا سکتا ہے۔
### منظم ڈیٹا
منظم ڈیٹا وہ ڈیٹا ہے جو قطاروں اور کالموں میں منظم ہوتا ہے، جہاں ہر قطار میں کالموں کا ایک ہی سیٹ ہوتا ہے۔ کالم کسی خاص قسم کی قدر کی نمائندگی کرتے ہیں اور اس قدر کی نمائندگی کرنے والے نام کے ساتھ شناخت کیے جائیں گے، جبکہ قطاروں میں اصل اقدار شامل ہوتی ہیں۔ کالموں پر اکثر اقدار کے لیے مخصوص قواعد یا پابندیاں ہوتی ہیں تاکہ یہ یقینی بنایا جا سکے کہ اقدار کالم کی درست نمائندگی کرتی ہیں۔ مثال کے طور پر، صارفین کی اسپریڈشیٹ کا تصور کریں جہاں ہر قطار میں فون نمبر ہونا ضروری ہے اور فون نمبروں میں کبھی بھی حروف تہجی کے کردار شامل نہیں ہوتے۔ فون نمبر کالم پر ایسے قواعد لاگو ہو سکتے ہیں تاکہ یہ یقینی بنایا جا سکے کہ یہ کبھی خالی نہ ہو اور صرف نمبروں پر مشتمل ہو۔
منظم ڈیٹا وہ ہوتا ہے جو قطاروں اور ستونوں میں ترتیب دیا گیا ہو، جہاں ہر قطار میں ایک ہی قسم کے ستون ہوتے ہیں۔ ستون کسی مخصوص قسم کی قدر کی نمائندگی کرتے ہیں اور انہیں ایک ایسا نام دیا جاتا ہے جو اس قدر کی نمائندگی کرتا ہے، جبکہ قطاروں میں اصل قدریں ہوتی ہیں۔ ستونوں میں اکثر قدروں پر مخصوص قواعد یا پابندیاں ہوتی ہیں تاکہ قدریں درست طور پر ستون کی نمائندگی کریں۔ مثال کے طور پر، ایک صارفین کا اسپریڈشیٹ سوچیں جہاں ہر قطار میں فون نمبر ہونا ضروری ہو اور فون نمبرز میں کبھی بھی حروف نہ ہوں۔ فون نمبر کے ستون پر ایسی پابندیاں لگائی جا سکتی ہیں تاکہ یہ کبھی خالی نہ ہو اور صرف نمبر شامل ہوں۔
منظم ڈیٹا کا فائدہ یہ ہے کہ اسے اس طرح منظم کیا جا سکتا ہے کہ اسے دوسرے منظم ڈیٹا سے متعلق کیا جا سکے۔ تاہم، چونکہ ڈیٹا کو مخصوص طریقے سے منظم کرنے کے لیے ڈیزائن کیا گیا ہے، اس کی مجموعی ساخت میں تبدیلیاں کرنا بہت زیادہ محنت طلب ہو سکتا ہے۔ مثال کے طور پر، صارفین کی اسپریڈشیٹ میں ایک ای میل کالم شامل کرنا جو خالی نہیں ہو سکتا، اس کا مطلب ہے کہ آپ کو یہ معلوم کرنا ہوگا کہ آپ موجودہ قطاروں میں یہ اقدار ڈیٹا سیٹ میں کیسے شامل کریں گے۔
منظم ڈیٹا کا فائدہ یہ ہے کہ اسے اس طرح ترتیب دیا جا سکتا ہے کہ اسے دوسرے منظم ڈیٹا سے جوڑا جا سکے۔ تاہم، چونکہ ڈیٹا کو ایک مخصوص انداز میں منظم کرنے کے لیے ڈیزائن کیا گیا ہے، اس کی مجموعی ساخت میں تبدیلی کرنا کافی محنت طلب ہو سکتا ہے۔ مثال کے طور پر، صارفین کے اسپریڈشیٹ میں ایک ای میل ستون شامل کرنا جو خالی نہ ہو، اس کا مطلب ہے کہ آپ کو یہ سمجھنا پڑے گا کہ آپ ان قدروں کو موجودہ قطاروں میں کیسے شامل کریں گے۔
منظم ڈیٹا کی مثالیں: اسپریڈشیٹس، رشتہ دار ڈیٹا بیس، فون نمبر، بینک اسٹیٹمنٹس
منظم ڈیٹا کی مثالیں: اسپریڈشیٹس، تعلقاتی ڈیٹا بیس، فون نمبرز، بینک اسٹیٹمنٹس
### غیر منظم ڈیٹا
غیر منظم ڈیٹا عام طور پر قطاروں یا کالموں میں درجہ بندی نہیں کیا جا سکتا اور اس میں فارمیٹ یا قواعد کا کوئی سیٹ نہیں ہوتا جس کی پیروی کی جائے۔ چونکہ غیر منظم ڈیٹا کی ساخت پر کم پابندیاں ہوتی ہیں، اس میں نئے معلومات شامل کرنا منظم ڈیٹا سیٹ کے مقابلے میں آسان ہوتا ہے۔ اگر کوئی سینسر ہر 2 منٹ میں بارومیٹرک پریشر پر ڈیٹا حاصل کر رہا ہے اور اسے اپ ڈیٹ ملا ہے جو اب اسے درجہ حرارت کو ماپنے اور ریکارڈ کرنے کی اجازت دیتا ہے، تو اگر یہ غیر منظم ہے تو موجودہ ڈیٹا کو تبدیل کرنے کی ضرورت نہیں ہے۔ تاہم، اس قسم کے ڈیٹا کا تجزیہ یا تحقیق کرنے میں زیادہ وقت لگ سکتا ہے۔ مثال کے طور پر، ایک سائنسدان جو سینسر کے ڈیٹا سے پچھلے مہینے کے اوسط درجہ حرارت کو تلاش کرنا چاہتا ہے، لیکن دریافت کرتا ہے کہ سینسر نے اپنے ریکارڈ شدہ ڈیٹا میں "e" کو نوٹ کرنے کے لیے ریکارڈ کیا کہ یہ ٹوٹا ہوا تھا بجائے ایک عام نمبر کے، جس کا مطلب ہے کہ ڈیٹا نامکمل ہے۔
غیر منظم ڈیٹا عام طور پر قطاروں یا ستونوں میں تقسیم نہیں ہوتا اور اس میں کسی خاص فارمیٹ یا قواعد کا مجموعہ نہیں ہوتا۔ چونکہ غیر منظم ڈیٹا کی ساخت پر کم پابندیاں ہوتی ہیں، نئے معلومات کا اضافہ اس کے مقابلے میں آسان ہوتا ہے جو منظم ڈیٹا سیٹ ہوتا ہے۔ اگر کوئی سینسر ہر 2 منٹ پر بارومیٹرک پریشر کا ڈیٹا ریکارڈ کرتا ہے اور اسے اپ ڈیٹ کیا جائے کہ وہ اب درجہ حرارت بھی ماپ اور ریکارڈ کر سکتا ہے، تو اگر یہ ڈیٹا غیر منظم ہو تو موجودہ ڈیٹا کو تبدیل کرنے کی ضرورت نہیں ہوتی۔ تاہم، اس قسم کے ڈیٹا کے تجزیے یا تحقیقات میں زیادہ وقت لگ سکتا ہے۔ مثال کے طور پر، ایک سائنسدان جو گزشتہ مہینے کی اوسط درجہ حرارت معلوم کرنا چاہتا ہے، لیکن معلوم کرتا ہے کہ سینسر نے کچھ ریکارڈ کیے گئے ڈیٹا میں "e" ٹائپ کیا ہے تاکہ یہ ظاہر کیا جا سکے کہ وہ خراب تھا، جو اس بات کا اشارہ ہے کہ ڈیٹا نامکمل ہے۔
غیر منظم ڈیٹا کی مثالیں: ٹیکسٹ فائلز، ٹیکسٹ میسجز، ویڈیو فائلز
### نیم منظم ڈیٹا
نیم منظم ڈیٹا میں وہ خصوصیات ہوتی ہیں جو اسے منظم اور غیر منظم ڈیٹا کا امتزاج بناتی ہیں۔ یہ عام طور پر قطاروں اور کالموں کے فارمیٹ کے مطابق نہیں ہوتا لیکن اس طرح منظم ہوتا ہے جسے منظم سمجھا جاتا ہے اور یہ ایک مقررہ فارمیٹ یا قواعد کے سیٹ کی پیروی کر سکتا ہے۔ ساخت ذرائع کے درمیان مختلف ہوگی، جیسے کہ ایک اچھی طرح سے بیان کردہ درجہ بندی سے لے کر کچھ زیادہ لچکدار چیز جو نئی معلومات کے آسان انضمام کی اجازت دیتی ہے۔ میٹا ڈیٹا وہ اشارے ہیں جو فیصلہ کرنے میں مدد کرتے ہیں کہ ڈیٹا کو کیسے منظم اور ذخیرہ کیا جائے اور ڈیٹا کی قسم کی بنیاد پر مختلف نام ہوں گے۔ میٹا ڈیٹا کے کچھ عام نام ٹیگز، عناصر، ادارے اور صفات ہیں۔ مثال کے طور پر، ایک عام ای میل پیغام میں ایک موضوع، مواد اور وصول کنندگان کا ایک سیٹ ہوگا اور اسے اس کے بھیجنے والے یا بھیجنے کے وقت کے لحاظ سے منظم کیا جا سکتا ہے۔
نیم منظم ڈیٹا میں ایسی خصوصیات ہوتی ہیں جو اسے منظم اور غیر منظم ڈیٹا کا امتزاج بناتی ہیں۔ یہ عام طور پر قطاروں اور ستونوں کے فارمیٹ کے مطابق نہیں ہوتا لیکن ایک ایسے انداز میں منظم ہوتا ہے جسے منظم سمجھا جاتا ہے اور یہ کسی مقررہ فارمیٹ یا قواعد کا پابند ہو سکتا ہے۔ اس کی ساخت ماخذ کے لحاظ سے مختلف ہوتی ہے، جیسا کہ ایک واضح ہائیرارکی سے لے کر اس میں آسان معلومات شامل کرنے کے لیے زیادہ لچک دار طریقہ۔ میٹا ڈیٹا وہ اشارے ہوتے ہیں جو یہ فیصلہ کرنے میں مدد کرتے ہیں کہ ڈیٹا کیسے منظم اور ذخیرہ کیا گیا ہے اور جسے مختلف نام دیے جاتے ہیں، جیسے ٹیگز، عناصر، اکائیوں اور صفات۔ مثال کے طور پر، ایک عام ای میل پیغام کا موضوع، متن، اور وصول کنندگان کا مجموعہ ہوتا ہے اور اسے بھیجنے والے یا بھیجنے کے وقت کے مطابق منظم کیا جا سکتا ہے۔
نیم منظم ڈیٹا کی مثالیں: HTML، CSV فائلز، جاوا اسکرپٹ آبجیکٹ نوٹیشن (JSON)
## ڈیٹا کے ذرائع
## ڈیٹا کے ماخذ
ڈیٹا کا ذریعہ وہ ابتدائی مقام ہے جہاں ڈیٹا تیار کیا گیا تھا، یا جہاں یہ "رہتا" ہے اور یہ اس بات پر منحصر ہوگا کہ اسے کیسے اور کب جمع کیا گیا۔ صارفین کے ذریعہ تیار کردہ ڈیٹا کو بنیادی ڈیٹا کہا جاتا ہے جبکہ ثانوی ڈیٹا اس ذریعہ سے آتا ہے جس نے عام استعمال کے لیے ڈیٹا جمع کیا ہو۔ مثال کے طور پر، بارش کے جنگل میں مشاہدات جمع کرنے والے سائنسدانوں کے ایک گروپ کو بنیادی سمجھا جائے گا اور اگر وہ اسے دوسرے سائنسدانوں کے ساتھ شیئر کرنے کا فیصلہ کرتے ہیں تو اسے ان لوگوں کے لیے ثانوی سمجھا جائے گا جو اسے استعمال کرتے ہیں۔
ڈیٹا کا ماخذ وہ ابتدائی جگہ ہوتی ہے جہاں سے ڈیٹا پیدا ہوا ہو یا جہاں "رہتا" ہو اور یہ اس بات پر منحصر ہوتا ہے کہ ڈیٹا کیسے اور کب جمع کیا گیا تھا۔ صارفین کے ذریعہ پیدا کردہ ڈیٹا کو بنیادی ڈیٹا کہا جاتا ہے، جب کہ ثانوی ڈیٹا اس ماخذ سے آتا ہے جس نے عمومی استعمال کے لیے ڈیٹا اکٹھا کیا ہو۔ مثال کے طور پر، اگر سائنسدانوں کا ایک گروپ بارانی جنگل میں مشاہدات جمع کر رہا ہے تو اسے بنیادی ڈیٹا سمجھا جائے گا، اور اگر وہ اسے دوسرے سائنسدانوں کے ساتھ بانٹنے کا فیصلہ کرتے ہیں تو جو لوگ اسے استعمال کریں گے ان کے لیے یہ ثانوی ڈیٹا ہوگا۔
ڈیٹا بیس ایک عام ذریعہ ہیں اور ڈیٹا کی میزبانی اور دیکھ بھال کے لیے ڈیٹا بیس مینجمنٹ سسٹم پر انحصار کرتے ہیں جہاں صارفین ڈیٹا کو دریافت کرنے کے لیے کمانڈز کو "کوئریز" کہتے ہیں۔ فائلز بطور ڈیٹا ذرائع آڈیو، تصویر، اور ویڈیو فائلز کے ساتھ ساتھ اسپریڈشیٹس جیسے ایکسل بھی ہو سکتی ہیں۔ انٹرنیٹ ذرائع ڈیٹا کی میزبانی کے لیے ایک عام مقام ہیں، جہاں ڈیٹا بیس کے ساتھ ساتھ فائلز بھی مل سکتی ہیں۔ ایپلیکیشن پروگرامنگ انٹرفیس، جسے APIs بھی کہا جاتا ہے، پروگرامرز کو انٹرنیٹ کے ذریعے بیرونی صارفین کے ساتھ ڈیٹا شیئر کرنے کے طریقے بنانے کی اجازت دیتے ہیں، جبکہ ویب اسکریپنگ کے عمل میں ویب صفحہ سے ڈیٹا نکالا جاتا ہے۔ [ڈیٹا کے ساتھ کام کرنے کے اسباق](../../../../../../../../../2-Working-With-Data) مختلف ڈیٹا ذرائع کو استعمال کرنے کے طریقے پر مرکوز ہیں۔
ڈیٹا بیس ایک عام ماخذ ہیں اور ڈیٹا کو ہوسٹ اور مینیج کرنے کے لیے ڈیٹا بیس مینجمنٹ سسٹم پر انحصار کرتے ہیں جہاں صارفین کوئریز کہلانے والے کمانڈز کا استعمال کرتے ہوئے ڈیٹا کو دریافت کرتے ہیں۔ فائلیں جیسے آڈیو، تصویری، اور ویڈیو فائلز کے علاوہ اسپریڈشیٹ مثلاً ایکسل، ڈیٹا کے ماخذ ہو سکتے ہیں۔ انٹرنیٹ بھی ایک عام جگہ ہے جہاں ڈیٹا ہوسٹ کیا جاتا ہے، جہاں ڈیٹا بیس اور فائلیں دونوں دستیاب ہو سکتی ہیں۔ ایپلیکیشن پروگرامنگ انٹرفیسز، جنہیں APIs کہا جاتا ہے، پروگرامرز کو انٹرنیٹ کے ذریعے بیرونی صارفین کے ساتھ ڈیٹا شیئر کرنے کے طریقے بنانے کی اجازت دیتے ہیں، جبکہ ویب اسکریپنگ کا عمل ویب پیج سے ڈیٹا نکالتا ہے۔ [ڈیٹا کے ساتھ کام کرنے والے اسباق](../../../../../../../../../2-Working-With-Data) میں مختلف ڈیٹا ماخذوں کے استعمال پر توجہ دی گئی ہے۔
## نتیجہ
اس سبق میں ہم نے سیکھا:
- ڈیٹا کیا ہے
- ڈیٹا کو کیسے بیان کیا جاتا ہے
- ڈیٹا کو کیسے درجہ بندی اور زمرہ بندی کی جاتی ہے
- ڈیٹا کہاں پایا جا سکتا ہے
- ڈیٹا کی وضاحت کیسے کی جاتی ہے
- ڈیٹا کی درجہ بندی اور تقسیم بندی کیسے کی جاتی ہے
- ڈیٹا کہاں سے حاصل کیا جا سکتا ہے
## 🚀 چیلنج
Kaggle کھلے ڈیٹا سیٹس کا ایک بہترین ذریعہ ہے۔ [ڈیٹا سیٹ سرچ ٹول](https://www.kaggle.com/datasets) کا استعمال کریں تاکہ کچھ دلچسپ ڈیٹا سیٹس تلاش کریں اور 3-5 ڈیٹا سیٹس کو اس معیار کے ساتھ درجہ بندی کریں:
کیگل ایک عمدہ ذریعہ ہے اوپن ڈیٹا سیٹس کا۔ [ڈیٹا سیٹ سرچ ٹول](https://www.kaggle.com/datasets) کا استعمال کرتے ہوئے کچھ دلچسپ ڈیٹا سیٹس تلاش کریں اور 3 سے 5 ڈیٹا سیٹس کو درج ذیل معیار کے مطابق درجہ بند کریں:
- کیا ڈیٹا مقداری ہے یا معیاری؟
- کیا ڈیٹا مقداری ہے یا وصفیاتی؟
- کیا ڈیٹا منظم، غیر منظم، یا نیم منظم ہے؟
## [لیکچر کے بعد کا کوئز](https://ff-quizzes.netlify.app/en/ds/quiz/5)
## [سبق کے بعد کا کوئز](https://ff-quizzes.netlify.app/en/ds/quiz/5)
## جائزہ اور خود مطالعہ
- یہ Microsoft Learn یونٹ، جس کا عنوان ہے [اپنے ڈیٹا کو درجہ بندی کریں](https://docs.microsoft.com/en-us/learn/modules/choose-storage-approach-in-azure/2-classify-data)، منظم، نیم منظم، اور غیر منظم ڈیٹا کا تفصیلی تجزیہ پیش کرتا ہے۔
- یہ مائیکروسافٹ لرن یونٹ، جس کا عنوان ہے [ڈیٹا فارمیٹس کی شناخت](https://learn.microsoft.com/en-us/training/modules/explore-core-data-concepts/2-data-formats?pivots=text)، منظم، نیم منظم، اور غیر منظم ڈیٹا کی تفصیلی تقسیم فراہم کرتا ہے۔
## اسائنمنٹ
@ -72,5 +73,7 @@ Kaggle کھلے ڈیٹا سیٹس کا ایک بہترین ذریعہ ہے۔ [ڈ
---
**ڈسکلیمر**:
یہ دستاویز AI ترجمہ سروس [Co-op Translator](https://github.com/Azure/co-op-translator) کا استعمال کرتے ہوئے ترجمہ کی گئی ہے۔ ہم درستگی کے لیے کوشش کرتے ہیں، لیکن براہ کرم آگاہ رہیں کہ خودکار ترجمے میں غلطیاں یا غیر درستیاں ہو سکتی ہیں۔ اصل دستاویز کو اس کی اصل زبان میں مستند ذریعہ سمجھا جانا چاہیے۔ اہم معلومات کے لیے، پیشہ ور انسانی ترجمہ کی سفارش کی جاتی ہے۔ ہم اس ترجمے کے استعمال سے پیدا ہونے والی کسی بھی غلط فہمی یا غلط تشریح کے ذمہ دار نہیں ہیں۔
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**ڈس کلیمر**:
یہ دستاویز AI ترجمہ سروس [Co-op Translator](https://github.com/Azure/co-op-translator) کے ذریعے ترجمہ کی گئی ہے۔ جبکہ ہم درستگی کے لیے کوشاں ہیں، براہ کرم اس بات سے آگاہ رہیں کہ خودکار ترجمے میں غلطیاں یا عدم درستیاں ہو سکتی ہیں۔ اصل دستاویز اپنے مادری زبان میں مستند ماخذ سمجھی جائے گی۔ حساس معلومات کے لیے پیشہ ور انسانی ترجمہ کی سفارش کی جاتی ہے۔ اس ترجمے کے استعمال سے پیدا ہونے والی کسی بھی غلط فہمی یا غلط تشریح کی ذمہ داری ہم قبول نہیں کرتے۔
<!-- CO-OP TRANSLATOR DISCLAIMER END -->

@ -4,8 +4,8 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"# تعارف احتمال اور شماریات\n",
"اس نوٹ بک میں، ہم کچھ تصورات کے ساتھ تجربہ کریں گے جن پر ہم نے پہلے بات کی ہے۔ احتمال اور شماریات کے بہت سے تصورات پائتھن میں ڈیٹا پراسیسنگ کے اہم لائبریریوں جیسے `numpy` اور `pandas` میں اچھے طریقے سے نمائندگی کیے گئے ہیں۔\n"
"# احتمال اور اعدادوشمار کا تعارف\n",
"اس نوٹ بک میں، ہم کچھ تصورات کے ساتھ کھیلیں گے جن پر ہم نے پہلے بات کی ہے۔ احتمال اور اعدادوشمار کے بہت سے تصورات پائتھن میں ڈیٹا پروسیسنگ کے بڑے لائبریریوں جیسے `numpy` اور `pandas` میں اچھی طرح سے پیش کیے گئے ہیں۔\n"
]
},
{
@ -25,7 +25,7 @@
"metadata": {},
"source": [
"## تصادفی متغیرات اور تقسیمات\n",
"آئیے 0 سے 9 تک کی یکساں تقسیم سے 30 قدروں کا نمونہ بنائیں۔ ہم اوسط اور ویرینس بھی حساب کریں گے۔\n"
"آئیے 0 سے 9 تک کی یونیفارم تقسیم سے 30 قیمتوں کا ایک نمونہ نکالنا شروع کرتے ہیں۔ ہم اوسط اور ویرینس بھی حساب کریں گے۔\n"
]
},
{
@ -44,7 +44,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"نمونے میں مختلف قدروں کی تعداد کا اندازہ بصری طور پر لگانے کے لیے، ہم **ہسٹوگرام** بنا سکتے ہیں:\n"
"نمونے میں کتنے مختلف اقدار موجود ہیں اس کا بصری اندازہ لگانے کے لیے، ہم **ہسٹوگرام** تخطیط کر سکتے ہیں:\n"
]
},
{
@ -61,9 +61,9 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"## حقیقی ڈیٹا کا تجزیہ\n",
"## حقیقی ڈیٹا کا تجزیہ \n",
"\n",
"حقیقی دنیا کے ڈیٹا کا تجزیہ کرتے وقت اوسط اور تغیر بہت اہم ہوتے ہیں۔ آئیں بیس بال کھلاڑیوں کے بارے میں ڈیٹا لوڈ کرتے ہیں جو [SOCR MLB Height/Weight Data](http://wiki.stat.ucla.edu/socr/index.php/SOCR_Data_MLB_HeightsWeights) سے حاصل کیا گیا ہے۔\n"
"جب حقیقی دنیا کے ڈیٹا کا تجزیہ کیا جاتا ہے تو اوسط اور ویرینس بہت اہم ہوتے ہیں۔ آئیے بیس بال کھلاڑیوں کے بارے میں ڈیٹا لوڈ کرتے ہیں جو [SOCR MLB Height/Weight Data](http://wiki.stat.ucla.edu/socr/index.php/SOCR_Data_MLB_HeightsWeights) سے ہے \n"
]
},
{
@ -80,9 +80,9 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"> ہم یہاں ڈیٹا کے تجزیہ کے لیے [**Pandas**](https://pandas.pydata.org/) نامی پیکیج استعمال کر رہے ہیں۔ ہم اس کورس میں بعد میں Pandas اور Python میں ڈیٹا کے ساتھ کام کرنے کے بارے میں مزید بات کریں گے۔\n",
"> ہم یہاں ڈیٹا اینالیسز کے لیے [**Pandas**](https://pandas.pydata.org/) نامی پیکیج استعمال کر رہے ہیں۔ ہم اس کورس میں بعد میں Pandas اور Python میں ڈیٹا کے ساتھ کام کرنے کے بارے میں مزید بات کریں گے۔\n",
"\n",
"آئیے عمر، قد اور وزن کے اوسط اقدار نکالیں:\n"
"آئیے عمر، قد اور وزن کی اوسط قیمتیں حساب کرتے ہیں:\n"
]
},
{
@ -98,7 +98,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"اب آئیں قد پر توجہ دیں، اور معیاری انحراف اور وریانس کا حساب لگائیں:\n"
"اب آئیے قد پر توجہ دیتے ہیں، اور معیاری انحراف اور واریانس کا حساب لگاتے ہیں: \n"
]
},
{
@ -126,7 +126,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"کے علاوہ مطلب، یہ معنی رکھتا ہے کہ درمیانی قدر اور چارٹرائلز کو بھی دیکھا جائے۔ انہیں **باکس پلاٹ** کے ذریعے بصری شکل میں پیش کیا جا سکتا ہے:\n"
"اوسط کے علاوہ، یہ سمجھداری ہے کہ میڈین ویلیو اور چارٹائلز کو بھی دیکھا جائے۔ انہیں **باکس پلاٹ** کا استعمال کرتے ہوئے تصور کیا جا سکتا ہے:\n"
]
},
{
@ -136,7 +136,7 @@
"outputs": [],
"source": [
"plt.figure(figsize=(10,2))\n",
"plt.boxplot(df['Height'].ffill(), vert=False, showmeans=True)\n",
"plt.boxplot(df['Height'].ffill(), orientation='horizontal', showmeans=True)\n",
"plt.grid(color='gray', linestyle='dotted')\n",
"plt.tight_layout()\n",
"plt.show()"
@ -146,7 +146,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"ہم اپنے ڈیٹا سیٹ کے ذیلی سیٹ کے باکس پلاٹس بھی بنا سکتے ہیں، مثلاً، کھلاڑی کے کردار کے مطابق گروپ بندی کر کے۔\n"
"ہم اپنے ڈیٹا سیٹ کے ذیلی مجموعوں کے باکس پلاٹس بھی بنا سکتے ہیں، مثلاً، کھلاڑی کے کردار کے لحاظ سے گروپ بندی کر کے۔\n"
]
},
{
@ -165,9 +165,9 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"> **نوٹ**: یہ خاکہ تجویز کرتا ہے کہ اوسطاً، پہلے بیسمین کی قد دوسری بیسمین کی قد سے زیادہ ہوتی ہے۔ بعد میں ہم سیکھیں گے کہ ہم اس مفروضے کی مزید رسمی طور پر جانچ کیسے کر سکتے ہیں، اور یہ کیسے ظاہر کریں کہ ہمارا ڈیٹا اس بات کو دکھانے کے لیے شماریاتی طور پر اہم ہے۔\n",
"> **نوٹ**: یہ خاکہ بتاتا ہے کہ اوسطاً، پہلے بیس مین کی قد دوسروں کے مقابلے میں زیادہ ہوتی ہے۔ بعد میں ہم سیکھیں گے کہ ہم اس مفروضے کا زیادہ رسمی طور پر کیسے امتحان لے سکتے ہیں، اور کیسے یہ ظاہر کر سکتے ہیں کہ ہمارا ڈیٹا شماریاتی طور پر اہم ہے۔ \n",
"\n",
"عمر، قد اور وزن سب تسلسل والے تصادفی متغیرات ہیں۔ آپ کے خیال میں ان کی تقسیم کیا ہے؟ معلوم کرنے کا ایک اچھا طریقہ یہ ہے کہ اقدار کا ہسٹوگرام بنائیں:\n"
"عمر، قد اور وزن تمام مسلسل رینڈم ویرئیبلز ہیں۔ آپ کے خیال میں ان کی تقسیم کیا ہے؟ اس کا پتہ لگانے کا ایک اچھا طریقہ ہے کہ اقدار کا ہسٹوگرام بنایا جائے: \n"
]
},
{
@ -188,9 +188,9 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"## نارمل تقسیم\n",
"## معمول کی تقسیم\n",
"\n",
"آئیے وزن کے ایک مصنوعی نمونے کو تخلیق کرتے ہیں جو ہمارے حقیقی ڈیٹا کے برابر اوسط اور تغیر کے ساتھ نارمل تقسیم کی پیروی کرتا ہے:\n"
"آئیے وزن کا ایک مصنوعی نمونہ بنائیں جو ہماری اصلی ڈیٹا کی طرح اوسط اور ویرینس کے ساتھ معمول کی تقسیم کی پیروی کرتا ہو:\n"
]
},
{
@ -231,7 +231,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"چونکہ حقیقی زندگی میں زیادہ تر اقدار عام طور پر تقسیم شدہ ہوتی ہیں، ہمیں نمونہ ڈیٹا پیدا کرنے کے لیے یکساں بے ترتیب نمبر جنریٹر استعمال نہیں کرنا چاہئے۔ اگر ہم وزنات کو یکساں تقسیم کے ساتھ پیدا کرنے کی کوشش کریں (جو `np.random.rand` سے پیدا ہوتا ہے) تو یہ ہوتا ہے:\n"
"چونکہ حقیقی زندگی میں زیادہ تر قدریں معمول کے مطابق تقسیم ہوتی ہیں، اس لیے ہمیں نمونہ ڈیٹا پیدا کرنے کے لیے یکساں تصادفی نمبر جنریٹر استعمال نہیں کرنا چاہیے۔ یہاں وہ ہوتا ہے جب ہم یکساں تقسیم کے ساتھ وزن پیدا کرنے کی کوشش کرتے ہیں (جو `np.random.rand` سے پیدا ہوا ہے):\n"
]
},
{
@ -251,9 +251,9 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"## وقفہ اعتماد\n",
"## وقفہِ اعتماد\n",
"\n",
"آئیں اب بیس بال کھلاڑیوں کے وزن اور قد کے لیے وقفہ اعتماد کا حساب لگائیں۔ ہم اس کوڈ کا استعمال کریں گے [اس اسٹیک اوور فلو گفتگو سے](https://stackoverflow.com/questions/15033511/compute-a-confidence-interval-from-sample-data):\n"
"آئیے اب بیس بال کھلاڑیوں کے وزن اور قد کے لیے وقفہ اعتماد کا حساب لگاتے ہیں۔ ہم [اس اسٹیک اوور فلو مباحثہ](https://stackoverflow.com/questions/15033511/compute-a-confidence-interval-from-sample-data) سے کوڈ استعمال کریں گے:\n"
]
},
{
@ -272,7 +272,7 @@
" return m, h\n",
"\n",
"for p in [0.85, 0.9, 0.95]:\n",
" m, h = mean_confidence_interval(df['Weight'].fillna(method='pad'),p)\n",
" m, h = mean_confidence_interval(df['Weight'].ffill(),p)\n",
" print(f\"p={p:.2f}, mean = {m:.2f} ± {h:.2f}\")"
]
},
@ -280,9 +280,9 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"## مفروضے کی جانچ\n",
"## مفروضہ کی جانچ\n",
"\n",
"آئیے اپنے بیس بال کھلاڑیوں کے ڈیٹا سیٹ میں مختلف کرداروں کا جائزہ لیتے ہیں:\n"
"آئیے اپنے بیس بال کھلاڑیوں کے ڈیٹا سیٹ میں مختلف کرداروں کو دریافت کریں:\n"
]
},
{
@ -298,7 +298,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"آئیے مفروضہ آزما ئیں کہ فرسٹ بیس مین سیکنڈ بیس مین سے لمبے ہوتے ہیں۔ اس کا سب سے آسان طریقہ اعتماد کے وقفوں کا تجزیہ کرنا ہے:\n"
"آئیے مفروضے کا امتحان لیں کہ فرسٹ بیس مین سیکنڈ بیس مین سے زیادہ لمبے ہوتے ہیں۔ اس کے لیے سب سے آسان طریقہ ہے اعتماد کے وقفوں کا امتحان لینا:\n"
]
},
{
@ -317,9 +317,9 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"ہم دیکھ سکتے ہیں کہ وقفے آپس میں متداخل نہیں ہیں۔\n",
"ہم دیکھ سکتے ہیں کہ وقفے ایک دوسرے سے متداخل نہیں ہیں۔\n",
"\n",
"فرضیہ کو ثابت کرنے کا ایک شماریاتی طور پر زیادہ درست طریقہ **Student t-test** استعمال کرنا ہے:\n"
"مفروضے کو ثابت کرنے کا ایک شماریاتی طور پر زیادہ درست طریقہ **اسٹوڈنٹ ٹی-ٹیسٹ** کا استعمال کرنا ہے:\n"
]
},
{
@ -338,18 +338,18 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"`ttest_ind` فنکشن کی طرف سے واپس کیے گئے دو اقدار یہ ہیں:\n",
"* p-ویلیو کو دو تقسیموں کے ایک ہی اوسط رکھنے کے امکان کے طور پر سمجھا جا سکتا ہے۔ ہمارے معاملے میں، یہ بہت کم ہے، جس کا مطلب ہے کہ پہلے بیس مین کے لمبے ہونے کی مضبوط شہادت موجود ہے۔\n",
"* t-ویلیو نارملائزڈ اوسط فرق کی درمیانی قیمت ہے جو t-ٹیسٹ میں استعمال ہوتی ہے، اور اسے دی گئی اعتماد کی ویلیو کے لیے ایک حد سے مقابلہ کیا جاتا ہے۔\n"
"`ttest_ind` فعل سے واپس کردہ دو قدریں یہ ہیں:\n",
"* p-قدر کو دو تقسیموں کے ایک ہی اوسط رکھنے کے امکان کے طور پر سمجھا جا سکتا ہے۔ ہمارے معاملے میں، یہ بہت کم ہے، جس کا مطلب ہے کہ یہ مضبوط ثبوت ہے کہ پہلے بیس مین زیادہ بلند قد کے ہیں۔\n",
"* t-قدر نرمل شدہ اوسط اختلاف کی درمیانی قیمت ہے جو t-ٹیسٹ میں استعمال ہوتی ہے، اور اسے ایک دیے گئے اعتماد کی قدر کے لیے ایک حد قیمت سے مقابلہ کیا جاتا ہے۔\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## مرکزی حد کے نظریہ کے ساتھ نارمل تقسیم کی نقل کرنا\n",
"## مرکزی حدی قضیہ کے ساتھ نارمل تقسیم کی نقل کرنا\n",
"\n",
"پائتھون میں فرضی بے ترتیب جنریٹر ہمارے لئے یکساں تقسیم فراہم کرنے کے لئے تیار کیا گیا ہے۔ اگر ہم نارمل تقسیم کے لئے ایک جنریٹر بنانا چاہتے ہیں، تو ہم مرکزی حد کے نظریہ کا استعمال کر سکتے ہیں۔ نارمل تقسیم شدہ قیمت حاصل کرنے کے لئے ہم صرف یکساں تقسیم سے پیدا کردہ نمونے کا اوسط حساب کریں گے۔\n"
"پائیتھن میں پیسو-رینڈم جنریٹر کو یکساں تقسیم دینے کے لیے ڈیزائن کیا گیا ہے۔ اگر ہم نارمل تقسیم کے لیے جنریٹر بنانا چاہتے ہیں تو ہم مرکزی حدی قضیہ استعمال کر سکتے ہیں۔ نارمل تقسیم شدہ قدر حاصل کرنے کے لیے ہم صرف یکساں جنریٹ کردہ نمونے کا اوسط نکالیں گے۔\n"
]
},
{
@ -375,7 +375,7 @@
"source": [
"## تعلق اور ایول بیس بال کارپوریشن\n",
"\n",
"تعلق ہمیں ڈیٹا سلسلوں کے درمیان تعلقات تلاش کرنے کی اجازت دیتا ہے۔ ہمارے کھلونا مثال میں، فرض کریں کہ ایک شرارتی بیس بال کارپوریشن ہے جو اپنے کھلاڑیوں کو ان کی لمبائی کے مطابق ادائیگی کرتی ہے - جتنا لمبا کھلاڑی ہوگا، اتنا زیادہ پیسہ اسے ملے گا۔ فرض کریں کہ ایک بنیادی تنخواہ $1000 ہے، اور لمبائی کے مطابق $0 سے $100 کا اضافی بونس ہے۔ ہم MLB کے حقیقی کھلاڑیوں کو لے کر ان کی خیالی تنخواہیں حساب کریں گے:\n"
"تعلق ہمیں ڈیٹا کے سلسلوں کے درمیان رشتے تلاش کرنے کی اجازت دیتا ہے۔ ہمارے کھلونا مثال میں، فرض کریں کہ ایک برا بیس بال کارپوریشن ہے جو اپنے کھلاڑیوں کو ان کی قد کے مطابق تنخواہ دیتی ہے - جتنا لمبا کھلاڑی ہوگا، اتنا زیادہ پیسہ وہ/وہ حاصل کرے گا۔ فرض کریں کہ ایک بنیادی تنخواہ $1000 ہے، اور اضافی بونس $0 سے $100 تک قد پر منحصر ہے۔ ہم MLB کے اصلی کھلاڑیوں کو لیں گے، اور ان کی خیالی تنخواہیں حساب لگائیں گے:\n"
]
},
{
@ -384,7 +384,7 @@
"metadata": {},
"outputs": [],
"source": [
"heights = df['Height'].fillna(method='pad')\n",
"heights = df['Height'].ffill()\n",
"salaries = 1000+(heights-heights.min())/(heights.max()-heights.mean())*100\n",
"print(list(zip(heights, salaries))[:10])"
]
@ -393,7 +393,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"آئیے اب ان سلسلوں کا کووریئنس اور کورلیشن حساب کرتے ہیں۔ `np.cov` ہمیں ایک ایسے کہلانے والے **کووریئنس میٹرکس** دے گا، جو کووریئنس کا کثیرالمتغیر توسیع ہے۔ کووریئنس میٹرکس $M$ کا عنصر $M_{ij}$ ان پٹ متغیرات $X_i$ اور $X_j$ کے مابین کووریئنس ہے، اور مَساس $M_{ii}$ کی قدر $X_{i}$ کے ویرینس کی نمائندگی کرتی ہے۔ اسی طرح، `np.corrcoef` ہمیں **کورلیشن میٹرکس** دے گا۔\n"
"آئیں اب ان سلسلوں کی کوواریئنس اور ہم آہنگی کا حساب لگائیں۔ `np.cov` ہمیں ایک اس طرح کا **کوواریئنس میٹرکس** دے گا، جو متعدد متغیروں کے لیے کوواریئنس کی توسیع ہے۔ کوواریئنس میٹرکس $M$ کا جزو $M_{ij}$ ان پٹ متغیرات $X_i$ اور $X_j$ کے درمیان ہم آہنگی ہے، اور قطر پر موجود اقدار $M_{ii}$ $X_{i}$ کی ویرینس ہے۔ اسی طرح، `np.corrcoef` ہمیں **ہم آہنگی میٹرکس** دے گا۔\n"
]
},
{
@ -411,7 +411,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"رابطہ جو 1 کے برابر ہو اس کا مطلب ہے کہ دو متغیرات کے درمیان ایک مضبوط **خطی تعلق** موجود ہے۔ ہم خطی تعلق کو بصری طور پر اس طرح دیکھ سکتے ہیں کہ ایک قدر کو دوسری کے مقابلے میں پلاٹ کریں:\n"
"ایک ارتباط جو 1 کے برابر ہو اس کا مطلب ہے کہ دو متغیرات کے درمیان ایک مضبوط **خطی تعلق** موجود ہے۔ ہم ایک قدر کو دوسری کے مقابلے میں گراف بنا کر اس خطی تعلق کو بصری طور پر دیکھ سکتے ہیں:\n"
]
},
{
@ -430,7 +430,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"آئیے دیکھتے ہیں کہ اگر تعلق خطی نہ ہو تو کیا ہوتا ہے۔ فرض کریں کہ ہماری کمپنی نے قد اور تنخواہوں کے درمیان واضح خطی انحصار کو چھپانے کا فیصلہ کیا، اور فارمولے میں کچھ غیر خطی پن متعارف کروایا، جیسے کہ `sin`:\n"
"آئیے دیکھتے ہیں کیا ہوتا ہے اگر تعلق خطی نہ ہو۔ فرض کریں کہ ہماری کمپنی نے قد اور تنخواہوں کے درمیان واضح خطی انحصار کو چھپانے کا فیصلہ کیا، اور فارمولا میں کچھ غیر خطی پن شامل کیا، مثلاً `sin`:\n"
]
},
{
@ -447,7 +447,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"اس صورت میں، تعلق تھوڑا سا کم ہے، لیکن یہ ابھی بھی کافی زیادہ ہے۔ اب، تعلق کو مزید کم واضح بنانے کے لیے، ہم تنخواہ میں کچھ اضافی بے ترتیبی شامل کرنے کے لیے کوئی تصادفی متغیر شامل کرنا چاہ سکتے ہیں۔ آئیے دیکھتے ہیں کیا ہوتا ہے:\n"
"اس صورت میں، تعلق تھوڑا سا کم ہے، لیکن پھر بھی کافی زیادہ ہے۔ اب، تعلق کو اور کم واضح بنانے کے لیے، ہم چاہ سکتے ہیں کہ تنخواہ میں کچھ اضافی بے ترتیبی شامل کریں۔ چلیں دیکھتے ہیں کیا ہوتا ہے:\n"
]
},
{
@ -476,9 +476,9 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"> کیا آپ اندازہ لگا سکتے ہیں کہ نقطے اس طرح عمودی لائنوں میں کیوں جڑتے ہیں؟\n",
"> کیا آپ اندازہ لگا سکتے ہیں کہ نقطے اس طرح عمودی لائنوں میں کیوں جُڑ جاتے ہیں؟\n",
"\n",
"ہم نے ایک مصنوعی طور پر تیار کردہ تصور جیسے تنخواہ اور مشاہدہ شدہ متغیر *قد* کے درمیان تعلق دیکھا ہے۔ آئیے یہ بھی دیکھتے ہیں کہ آیا دو مشاہدہ شدہ متغیرات، جیسے قد اور وزن، آپس میں بھی تعلق رکھتے ہیں:\n"
"ہم نے ایک مصنوعی طور پر تیار کردہ تصور جیسے تنخواہ اور مشاہدہ شدہ متغیر *قد* کے درمیان تعلق دیکھا ہے۔ آئیے یہ بھی دیکھتے ہیں کہ دو مشاہدہ شدہ متغیرات، جیسے قد اور وزن، بھی ایک دوسرے سے متعلق ہیں یا نہیں:\n"
]
},
{
@ -494,11 +494,11 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"بدقسمتی سے، ہمیں کوئی نتائج نہیں ملے - صرف کچھ عجیب `nan` اقدار۔ اس کی وجہ یہ ہے کہ ہماری سیریز میں کچھ اقدار غیر معین ہیں، جنہیں `nan` کے طور پر ظاہر کیا گیا ہے، جو آپریشن کے نتیجے کو بھی غیر معین بنا دیتا ہے۔ میٹرکس کو دیکھ کر ہم دیکھ سکتے ہیں کہ `Weight` مسئلہ دار کالم ہے، کیونکہ `Height` اقدار کے درمیان خود تعلق معلوم کیا گیا ہے۔\n",
"بدقسمتی سے، ہمیں کوئی نتائج نہیں ملے - صرف کچھ عجیب `nan` اقدار تھیں۔ یہ اس وجہ سے ہے کہ ہماری سیریز کی کچھ قدریں غیر معین ہیں، جن کی نمائندگی `nan` کے طور پر کی گئی ہے، جو آپریشن کے نتیجے کو بھی غیر معین بنا دیتی ہے۔ میٹرکس کو دیکھ کر ہم دیکھ سکتے ہیں کہ `Weight` مسئلہ پیدا کرنے والا کالم ہے، کیونکہ `Height` کی قیمتوں کے درمیان خود correlation حساب کی گئی ہے۔\n",
"\n",
"> یہ مثال **ڈیٹا کی تیاری** اور **صفائی** کی اہمیت کو ظاہر کرتی ہے۔ بغیر مناسب ڈیٹا کے ہم کچھ بھی حساب نہیں لگا سکتے۔\n",
"> یہ مثال **ڈیٹا کی تیاری** اور **صفائی** کی اہمیت دکھاتی ہے۔ مناسب ڈیٹا کے بغیر ہم کچھ بھی حساب نہیں کر سکتے۔\n",
"\n",
"آئیے گمشدہ اقدار کو پُر کرنے کے لیے `fillna` طریقہ استعمال کرتے ہیں، اور تعلق کا حساب لگاتے ہیں:\n"
"آئیے `fillna` طریقہ استعمال کرتے ہیں تاکہ گمشدہ قدروں کو پر کیا جائے، اور correlation کو حساب کریں:\n"
]
},
{
@ -507,14 +507,14 @@
"metadata": {},
"outputs": [],
"source": [
"np.corrcoef(df['Height'].fillna(method='pad'), df['Weight'])"
"np.corrcoef(df['Height'].ffill(), df['Weight'])"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"واقعی ایک تعلق موجود ہے، لیکن ہماری مصنوعی مثال کی طرح اتنا مضبوط نہیں۔ درحقیقت، اگر ہم ایک قدر کو دوسری کے مقابلہ میں اسکیٹر پلاٹ میں دیکھیں، تو تعلق بہت کم واضح ہوگا:\n"
"واقعی ایک تعلق موجود ہے، لیکن اتنا مضبوط نہیں جتنا ہمارے مصنوعی مثال میں تھا۔ درحقیقت، اگر ہم ایک قیمت کے مقابلے میں دوسری قیمت کے سکیٹر پلاٹ کو دیکھیں، تو تعلق بہت کم واضح ہوگا:\n"
]
},
{
@ -537,14 +537,14 @@
"source": [
"## نتیجہ\n",
"\n",
"اس نوٹ بک میں ہم نے سیکھا کہ ڈیٹا پر بنیادی عملیات کیسے انجام دی جاتی ہیں تاکہ شماریاتی افعال کا حساب لگایا جا سکے۔ اب ہم جانتے ہیں کہ ریاضی اور شماریات کے ایک مضبوط آلے کا استعمال کرتے ہوئے کچھ مفروضات کو کیسے ثابت کیا جائے، اور دیے گئے ڈیٹا سیمپل کے لیے کسی بھی متغیر کے لیے اعتماد کے وقفے کیسے حساب کیے جائیں۔\n"
"اس نوٹ بک میں ہم نے ڈیٹا پر بنیادی عملیاتی طریقے سیکھے ہیں تاکہ شماریاتی افعال کا حساب کیا جا سکے۔ ہم اب جانتے ہیں کہ کچھ مفروضات کو ثابت کرنے کے لیے ریاضی اور شماریات کے ایک مضبوط نظام کا استعمال کیسے کیا جائے، اور کس طرح ڈیٹا سیمپل دیے جانے پر اختیاری متغیرات کے لیے اعتماد کے وقفے حساب کیے جائیں۔ \n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"---\n\n<!-- CO-OP TRANSLATOR DISCLAIMER START -->\n**دستبرداری**:\nاس دستاویز کا ترجمہ AI ترجمہ خدمات [Co-op Translator](https://github.com/Azure/co-op-translator) کے ذریعے کیا گیا ہے۔ اگرچہ ہم درستگی کی کوشش کرتے ہیں، براہ کرم آگاہ رہیں کہ خودکار تراجم میں غلطیاں یا غیر درستیاں ہو سکتی ہیں۔ اصل دستاویز اپنی مادری زبان میں مستند ذریعہ سمجھی جائے۔ اہم معلومات کے لئے پیشہ ور انسانی ترجمہ کی سفارش کی جاتی ہے۔ اس ترجمے کے استعمال سے پیدا ہونے والی کسی بھی غلط فہمی یا غلط تشریح کے لئے ہم ذمہ دار نہیں ہیں۔\n<!-- CO-OP TRANSLATOR DISCLAIMER END -->\n"
"---\n\n<!-- CO-OP TRANSLATOR DISCLAIMER START -->\n**ڈس کلیمر**:\nیہ دستاویز AI ترجمہ سروس [Co-op Translator](https://github.com/Azure/co-op-translator) کے ذریعے ترجمہ کی گئی ہے۔ جبکہ ہم درستگی کے لیے کوشاں ہیں، براہ کرم اس بات سے آگاہ رہیں کہ خودکار ترجمے میں غلطیاں یا عدم درستیاں ہو سکتی ہیں۔ اصل دستاویز اپنے مادری زبان میں مستند ماخذ سمجھی جائے گی۔ حساس معلومات کے لیے پیشہ ور انسانی ترجمہ کی سفارش کی جاتی ہے۔ اس ترجمے کے استعمال سے پیدا ہونے والی کسی بھی غلط فہمی یا غلط تشریح کی ذمہ داری ہم قبول نہیں کرتے۔\n<!-- CO-OP TRANSLATOR DISCLAIMER END -->\n"
]
}
],
@ -568,12 +568,6 @@
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.9.6"
},
"coopTranslator": {
"original_hash": "0f899e3c5019f948e7c787b22f3b2304",
"translation_date": "2026-01-16T09:16:03+00:00",
"source_file": "1-Introduction/04-stats-and-probability/notebook.ipynb",
"language_code": "ur"
}
},
"nbformat": 4,

@ -4,11 +4,11 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"# کووڈ-19 وبائی مرض کی تخمینہ کاری\n",
"# کووڈ-19 وبا کی تخمینہ کاری\n",
"\n",
"## ڈیٹا لوڈ کرنا\n",
"\n",
"ہم کووڈ-19 متاثرہ افراد کا ڈیٹا استعمال کریں گے، جو [جان ہاپکنز یونیورسٹی](https://jhu.edu/) کے [سنٹر فار سسٹمز سائنس اینڈ انجینئرنگ](https://systems.jhu.edu/) (CSSE) کی طرف سے فراہم کیا گیا ہے۔ ڈیٹاسیٹ [اس GitHub ریپوزٹری](https://github.com/CSSEGISandData/COVID-19) میں دستیاب ہے۔\n"
"ہم کووڈ-19 متاثرہ افراد کا ڈیٹا استعمال کریں گے، جو [Center for Systems Science and Engineering](https://systems.jhu.edu/) (CSSE) نے [Johns Hopkins University](https://jhu.edu/) میں فراہم کیا ہے۔ ڈیٹاسیٹ [اس GitHub Repository](https://github.com/CSSEGISandData/COVID-19) میں دستیاب ہے۔\n"
]
},
{
@ -27,7 +27,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"ہم تازہ ترین ڈیٹا کو براہ راست GitHub سے `pd.read_csv` استعمال کرتے ہوئے لوڈ کر سکتے ہیں۔ اگر کسی وجہ سے ڈیٹا دستیاب نہ ہو، تو آپ ہمیشہ `data` فولڈر میں موجود مقامی کاپی استعمال کر سکتے ہیں - بس نیچے دی گئی لائن کی ان کمنٹ کریں جو `base_url` کو ڈیفائن کرتی ہے:\n"
"ہم تازہ ترین ڈیٹا براہ راست GitHub سے `pd.read_csv` کا استعمال کرتے ہوئے لوڈ کر سکتے ہیں۔ اگر کسی وجہ سے ڈیٹا دستیاب نہ ہو، تو آپ ہمیشہ `data` فولڈر میں مقامی طور پر موجود کاپی استعمال کر سکتے ہیں - بس نیچے والی لائن کو جو `base_url` کو ڈیفائن کرتی ہے، ان کمنٹ کریں:\n"
]
},
{
@ -48,7 +48,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"اب آئیے متاثرہ افراد کے لیے ڈیٹا لوڈ کریں اور دیکھیں کہ ڈیٹا کیسا دکھتا ہے:\n"
"آئیے اب متاثرہ افراد کے لیے ڈیٹا لوڈ کرتے ہیں اور دیکھتے ہیں کہ ڈیٹا کیسا نظر آتا ہے:\n"
]
},
{
@ -265,7 +265,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"ہم دیکھ سکتے ہیں کہ جدول کی ہر قطار ہر ملک اور/یا صوبے کے لیے متاثرہ افراد کی تعداد کی وضاحت کرتی ہے، اور ستون تاریخوں سے مطابقت رکھتے ہیں۔ اسی طرح کی جدولیں دیگر ڈیٹا، جیسے صحت یاب افراد کی تعداد اور اموات کی تعداد کے لیے بھی لوڈ کی جا سکتی ہیں۔\n"
"ہم دیکھ سکتے ہیں کہ ٹیبل کی ہر قطار ہر ملک اور/یا صوبے کے متاثرہ افراد کی تعداد کی تعریف کرتی ہے، اور کالم تاریخوں سے مطابقت رکھتے ہیں۔ اسی طرح کے ٹیبلز دیگر ڈیٹا کے لیے بھی لوڈ کیے جا سکتے ہیں، جیسے صحت یاب افراد کی تعداد اور اموات کی تعداد۔\n"
]
},
{
@ -282,9 +282,9 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"## ڈیٹا کو سمجھنا\n",
"## ڈیٹا کی سمجھ بوجھ\n",
"\n",
"اوپر دی گئی جدول سے صوبہ کالم کا کردار واضح نہیں ہے۔ آئیے دیکھتے ہیں کہ `Province/State` کالم میں کون کون سی مختلف قدریں موجود ہیں:\n"
"اوپر دی گئی جدول سے صوبے کے کالم کا کردار واضح نہیں ہے۔ آئیے دیکھتے ہیں `Province/State` کالم میں کون سے مختلف اقدار موجود ہیں:\n"
]
},
{
@ -322,7 +322,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"ناموں سے ہم یہ نتیجہ نکال سکتے ہیں کہ آسٹریلیا اور چین جیسے ممالک کی صوبوں کے لحاظ سے مزید تفصیلی تقسیم ہے۔ آئیے چین کی معلومات دیکھیں تاکہ مثال سمجھ سکیں:\n"
"ناموں سے ہم یہ نتیجہ اخذ کر سکتے ہیں کہ آسٹریلیا اور چین جیسے ممالک کے صوبوں کے لحاظ سے زیادہ تفصیلی تقسیم موجود ہے۔ آئیے چین کی معلومات دیکھتے ہیں تاکہ مثال معلوم ہو سکے:\n"
]
},
{
@ -1321,9 +1321,9 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"## ڈیٹا کی پری پروسیسنگ\n",
"## ڈیٹا کی پیشگی پروسیسنگ\n",
"\n",
"ہم ممالک کو مزید خطوں میں تقسیم کرنے میں دلچسپی نہیں رکھتے، اس لیے ہم سب سے پہلے اس تقسیم کو ختم کریں گے اور تمام خطوں کی معلومات کو یکجا کریں گے تاکہ پورے ملک کے لیے معلومات حاصل کی جا سکیں۔ یہ کام `groupby` کا استعمال کر کے کیا جا سکتا ہے:\n"
"ہم ممالک کو مزید علاقوں میں تقسیم کرنے میں دلچسپی نہیں رکھتے، اس لیے ہم پہلے اس تقسیم کو ختم کریں گے اور تمام علاقوں کی معلومات کو ایک ساتھ شامل کریں گے تاکہ پورے ملک کی معلومات حاصل کی جا سکیں۔ یہ کام `groupby` کا استعمال کرکے کیا جا سکتا ہے:\n"
]
},
{
@ -1578,7 +1578,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"آپ دیکھ سکتے ہیں کہ `groupby` کے استعمال کی وجہ سے تمام ڈیٹا فریمز اب ملک/علاقہ کی بنیاد پر انڈیکس کیے گئے ہیں۔ ہم اس طرح کسی مخصوص ملک کا ڈیٹا `.loc` استعمال کرکے حاصل کر سکتے ہیں:|\n"
"آپ دیکھ سکتے ہیں کہ `groupby` کے استعمال کی وجہ سے تمام DataFrames اب ملک/علاقہ کے ذریعہ انڈیکس کیے گئے ہیں۔ ہم اس طرح مخصوص ملک کے ڈیٹا تک پہنچ سکتے ہیں `.loc` استعمال کرکے:|\n"
]
},
{
@ -1607,7 +1607,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"> **نوٹ** دیکھیں کہ ہم `[3:]` کیسے استعمال کرتے ہیں تاکہ ایک ترتیب کے پہلے تین عناصر کو ہٹا سکیں جن میں غیر تاریخ میٹاڈیٹا شامل ہوتا ہے (صوبہ/ریاست اور جغرافیائی محل وقوع کے کالمز)۔ ہم وہ تین کالمز مکمل طور پر بھی حذف کر سکتے ہیں:\n"
"> **نوٹ کریں** کہ ہم `[3:]` کا استعمال کیسے کرتے ہیں تاکہ ایک تسلسل کے پہلے تین عناصر کو ہٹایا جا سکے جن میں غیر تاریخ میٹا ڈیٹا ہوتا ہے (صوبہ/ریاست اور جغرافیائی مقام کے ستون). ہم ان تین ستونوں کو مکمل طور پر بھی ہٹا سکتے ہیں:\n"
]
},
{
@ -1625,9 +1625,9 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"## ڈیٹا کی تحقیق\n",
"## ڈیٹا کی جانچ پڑتال\n",
"\n",
"آئیے اب کسی مخصوص ملک کی تحقیق کریں۔ آئیے ایک فریم بنائیں جس میں تاریخ کے مطابق انفیکشن کا ڈیٹا ہو:\n"
"آئیے اب ایک مخصوص ملک کی جانچ پڑتال کرتے ہیں۔ آئیے ایک فریم بناتے ہیں جس میں تاریخ کے لحاظ سے انفیکشن کے ڈیٹا شامل ہوں:\n"
]
},
{
@ -1793,7 +1793,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"اب آئیے روزانہ نئے متاثرہ افراد کی تعداد کا حساب لگائیں۔ اس سے ہمیں وباء کی رفتار دیکھنے میں مدد ملے گی کہ وہ کتنی تیزی سے پھیل رہی ہے۔ اسے کرنے کا سب سے آسان طریقہ `diff` کا استعمال ہے:\n"
"اب ہم ہر دن نئے متاثرہ افراد کی تعداد معلوم کرتے ہیں۔ اس سے ہمیں وبا کی رفتار کو دیکھنے میں مدد ملے گی۔ یہ کرنے کا سب سے آسان طریقہ `diff` کا استعمال ہے:\n"
]
},
{
@ -1823,7 +1823,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"ہم ڈیٹا میں اعلی اتار چڑھاؤ دیکھ سکتے ہیں۔ آئیے ایک مہینے پر غور سے نظر ڈالتے ہیں:\n"
"ہم ڈیٹا میں شدید اتار چڑھاؤ دیکھ سکتے ہیں۔ آئیے مہینوں میں سے ایک پر قریب سے نظر ڈالیں:\n"
]
},
{
@ -1852,7 +1852,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"یہ واضح طور پر لگتا ہے کہ ڈیٹا میں ہفتہ وار اتار چڑھاؤ ہیں۔ چونکہ ہم رجحانات کو دیکھنے کے قابل ہونا چاہتے ہیں، اس لیے کرنٹ ایوریج کا حساب لگا کر کرنٹ کو ہموار کرنا سمجھداری ہے (یعنی ہر دن کے لیے ہم پچھلے کئی دنوں کی اوسط قیمت کا حساب لگائیں گے):\n"
"یہ واضح طور پر لگتا ہے کہ ڈیٹا میں ہفتہ وار اتار چڑھاؤ ہیں۔ چونکہ ہم رجحانات کو دیکھنا چاہتے ہیں، اس لیے کرِو کو ہموار کرنا معنی خیز ہوتا ہے جس کے لیے ہم رننگ اوسط کا حساب لگائیں گے (یعنی ہر دن کے لیے ہم پچھلے کئی دنوں کی اوسط قدر کا حساب لگائیں گے): \n"
]
},
{
@ -1882,7 +1882,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"تاکہ ہم کئی ممالک کا موازنہ کر سکیں، ہم ملک کی آبادی کو مدنظر رکھنا چاہیں گے، اور ملک کی آبادی کے حوالے سے متاثرہ افراد کے فیصد کا موازنہ کریں گے۔ ملک کی آبادی حاصل کرنے کے لیے، آئیے ممالک کے ڈیٹاسیٹ کو لوڈ کرتے ہیں:\n"
"کئی ممالک کا موازنہ کرنے کے لیے، ہم ملک کی آبادی کو مدنظر رکھنا چاہ سکتے ہیں، اور ملک کی آبادی کے حوالے سے متاثرہ افراد کے فیصد کا موازنہ کرنا چاہ سکتے ہیں۔ ملک کی آبادی حاصل کرنے کے لیے، آئیے ممالک کا ڈیٹا سیٹ لوڈ کرتے ہیں:\n"
]
},
{
@ -2153,7 +2153,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"چونکہ اس ڈیٹا سیٹ میں دونوں ممالک اور صوبوں کی معلومات شامل ہیں، اس لیے پورے ملک کی آبادی حاصل کرنے کے لیے ہمیں تھوڑا ہوشیار ہونا پڑے گا:\n"
"چونکہ اس ڈیٹاسیٹ میں ملکوں اور صوبوں دونوں کی معلومات شامل ہیں، پوری ملک کی آبادی حاصل کرنے کے لیے ہمیں تھوڑا ہوشیار ہونا پڑے گا: \n"
]
},
{
@ -2261,14 +2261,15 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"## کمپیوٹنگ $R_t$\n",
"\n",
"یہ دیکھنے کے لیے کہ بیماری کتنی متعدی ہے، ہم **بنیادی تولیدی نمبر** $R_0$ کو دیکھتے ہیں، جو اس بات کی نشاندہی کرتا ہے کہ ایک متاثرہ شخص مزید کتنے لوگوں کو متاثر کرے گا۔ جب $R_0$ ایک سے زیادہ ہوتا ہے، تو وباء کے پھیلنے کا امکان ہوتا ہے۔\n",
"## کمپیوٹ کرنا $R_t$\n",
"\n",
"$R_0$ بیماری کی اپنی خصوصیت ہے، اور اس میں کچھ حفاظتی اقدامات کو شامل نہیں کیا جاتا جو لوگ وباء کو سست کرنے کے لیے کر سکتے ہیں۔ وباء کے دوران، ہم کسی بھی دیے گئے وقت $t$ پر تولیدی نمبر $R_t$ کا اندازہ لگا سکتے ہیں۔ یہ ظاہر کیا گیا ہے کہ اس نمبر کا تقریباً اندازہ 8 دن کی ونڈو لے کر لگایا جا سکتا ہے، اور حساب کیا جا سکتا ہے $$R_t=\\frac{I_{t-7}+I_{t-6}+I_{t-5}+I_{t-4}}{I_{t-3}+I_{t-2}+I_{t-1}+I_t}$$\n",
"جہاں $I_t$ دن $t$ کو نئے متاثر افراد کی تعداد ہے۔\n",
"یہ دیکھنے کے لیے کہ بیماری کتنی متعدی ہے، ہم **بنیادی تولیدی نمبر** $R_0$ کو دیکھتے ہیں، جو اس بات کی نشاندہی کرتا ہے کہ ایک متاثرہ شخص مزید کتنے افراد کو متاثر کرے گا۔ جب $R_0$ ایک سے زیادہ ہوتا ہے، تو وبا کے پھیلنے کا امکان ہوتا ہے۔\n",
"\n",
"آئیے ہمارے وبائی ڈیٹا کے لیے $R_t$ کا حساب لگائیں۔ ایسا کرنے کے لیے، ہم 8 دن کی `ninfected` کی متحرک ونڈو لیں گے، اور اوپر دیا گیا تناسب حساب کرنے کے لیے فنکشن لگائیں گے:\n"
"$R_0$ بیماری کی اپنی خاصیت ہے، اور اس میں وہ حفاظتی تدابیر شامل نہیں ہوتیں جو لوگ وبا کو سست کرنے کے لیے اپنانے کی کوشش کرتے ہیں۔ وبا کے دوران، ہم کسی بھی دیے گئے وقت $t$ پر تولیدی نمبر $R_t$ کا تخمینہ لگا سکتے ہیں۔ ظاہر کیا گیا ہے کہ اس نمبر کا تخمینہ لگ بھگ 8 دنوں کی ونڈو لے کر لگایا جا سکتا ہے، اور اس طرح حساب کیا جا سکتا ہے $$R_t=\\frac{I_{t-7}+I_{t-6}+I_{t-5}+I_{t-4}}{I_{t-3}+I_{t-2}+I_{t-1}+I_t}$$\n",
"جہاں $I_t$ دن $t$ پر نئے متاثرہ افراد کی تعداد ہے۔\n",
"\n",
"آئیے اپنے وبائی ڈیٹا کے لیے $R_t$ کا حساب لگائیں۔ ایسا کرنے کے لیے، ہم 8 `ninfected` قدروں کی ایک رولنگ ونڈو لیں گے، اور اوپر تناسب کو حساب کرنے کے لیے فنکشن لگائیں گے:\n"
]
},
{
@ -2298,9 +2299,9 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"آپ دیکھ سکتے ہیں کہ گراف میں کچھ خلاء ہیں۔ یہ یا تو `NaN` کی وجہ سے ہو سکتے ہیں، اگر ڈیٹا سیٹ میں `inf` کی قدریں موجود ہوں۔ `inf` صفر سے تقسیم کی وجہ سے ہو سکتا ہے، اور `NaN` اس بات کی نشاندہی کر سکتا ہے کہ ڈیٹا موجود نہیں ہے، یا نتیجہ نکالنے کے لیے ڈیٹا دستیاب نہیں ہے (جیسے ہمارے فریم کے شروع میں، جہاں چوڑائی 8 کی رولنگ ونڈو ابھی دستیاب نہیں ہے)۔ گراف کو بہتر بنانے کے لیے، ہمیں ان قدروں کو `replace` اور `fillna` فنکشن استعمال کرکے پر کرنا ہوگا۔\n",
"آپ دیکھ سکتے ہیں کہ گراف میں کچھ خالی جگہیں ہیں۔ یہ یا تو `NaN` کی وجہ سے ہو سکتی ہیں، اگر ڈیٹا سیٹ میں `inf` کی قدریں موجود ہوں۔ `inf` صفر سے تقسیم کی وجہ سے ہو سکتی ہے، اور `NaN` اس بات کی نشاندہی کر سکتا ہے کہ ڈیٹا غائب ہے، یا نتیجہ نکالنے کے لیے کوئی ڈیٹا دستیاب نہیں ہے (جیسے ہمارے فریم کے بالکل شروع میں، جہاں چوڑائی 8 کی رولنگ ونڈو ابھی دستیاب نہیں ہے)۔ گراف کو بہتر بنانے کے لیے، ہمیں ان قدروں کو `replace` اور `fillna` فنکشن استعمال کرتے ہوئے بھرنا ہوگا۔\n",
"\n",
"آئیے وبا کے آغاز پر مزید نظر ڈالیں۔ ہم y-محور کی قدروں کو 6 سے کم قدریں ہی دکھانے تک محدود کریں گے، تاکہ بہتر دیکھ سکیں، اور 1 پر افقی لائن کھینچیں گے۔\n"
"آئیے وبا کے شروع کے حصے کو مزید دیکھتے ہیں۔ ہم y-axis کی قدروں کو بھی 6 سے نیچے کی قدروں تک محدود کریں گے، تاکہ بہتر دیکھ سکیں، اور 1 پر ایک افقی لائن بنائیں گے۔\n"
]
},
{
@ -2331,7 +2332,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"ایک اور دلچسپ اشاریہ وبا کا **تفاضلی**، یا نئے کیسز میں **روزانہ فرق** ہے۔ یہ ہمیں واضح طور پر دیکھنے کی اجازت دیتا ہے کہ وبا کب بڑھ رہی ہے یا کم ہو رہی ہے۔\n"
"وبا کی ایک اور دلچسپ نشانی **مشتق**، یا نئے کیسز میں **روزانہ فرق** ہے۔ یہ ہمیں واضح طور پر دیکھنے کی اجازت دیتا ہے کہ وبا کب بڑھ رہی ہے یا کم ہو رہی ہے۔\n"
]
},
{
@ -2360,7 +2361,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"دیے گئے حقائق کی روشنی میں کہ رپورٹنگ کی وجہ سے ڈیٹا میں بہت زیادہ اتار چڑھاؤ آتا ہے، مکمل تصویر حاصل کرنے کے لیے رولنگ اوسط چلا کر گراف کو ہموار کرنا سمجھداری ہوگی۔ آئیے پھر وبا کے پہلے مہینوں پر توجہ مرکوز کرتے ہیں:\n"
"جب یہ بات سامنے آتی ہے کہ رپورٹنگ کی وجہ سے ڈیٹا میں بہت سا اتار چڑھاؤ ہوتا ہے، تو مجموعی تصویر حاصل کرنے کے لیے کروم کو ہموار کرنا مناسب ہوتا ہے تاکہ رولا اوسط چلا کر۔ آئیے پھر سے وباء کے پہلے مہینوں پر توجہ مرکوز کریں:\n"
]
},
{
@ -2390,26 +2391,27 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"\n",
"## چیلنج\n",
"\n",
"اب وقت ہے کہ آپ کوڈ اور ڈیٹا کے ساتھ مزید کھیلیں! یہاں کچھ تجاویز ہیں جن پر آپ تجربہ کر سکتے ہیں:\n",
"* مختلف ممالک میں وبا کے پھیلاؤ کو دیکھیں۔\n",
"* کئی ممالک کے لیے $R_t$ کے گراف ایک ساتھ ایک گراف پر موازنہ کے لیے بنائیں، یا کئی گراف ایک ساتھ قطار میں بنائیں۔\n",
"* دیکھیں کہ موتوں اور صحتیابیوں کی تعداد متاثرہ کیسز کی تعداد کے ساتھ کس طرح تعلق رکھتی ہے۔\n",
"* یہ جاننے کی کوشش کریں کہ ایک عام بیماری کتنی دیر تک رہتی ہے، انفیکشن کی شرح اور موتوں کی شرح کو بصری طور پر ہم آہنگ کر کے اور کچھ انوملیز تلاش کرکے۔ آپ کو یہ معلوم کرنے کے لیے مختلف ممالک کو دیکھنا پڑ سکتا ہے۔\n",
"* اموات کی شرح کا حساب لگائیں اور دیکھیں کہ یہ وقت کے ساتھ کیسے بدلتی ہے۔ آپ بیماری کی مدت (دنوں میں) کو مدنظر رکھنا چاہتے ہوں گے تاکہ حساب کرنے سے پہلے ایک وقت کی سیریز کو شفٹ کیا جا سکے۔\n"
"اب وقت ہے کہ آپ کوڈ اور ڈیٹا کے ساتھ مزید کھیلیں! یہاں کچھ تجاویز دی گئی ہیں جن کے ساتھ آپ تجربہ کر سکتے ہیں:\n",
"* مختلف ممالک میں وباء کے پھیلاؤ کو دیکھیں۔\n",
"* موازنہ کے لیے متعدد ممالک کے $R_t$ گرافز کو ایک گراف پر بنائیں، یا ساتھ ساتھ کئی گرافز بنائیں۔\n",
"* دیکھیں کہ اموات اور صحت یابیوں کی تعداد متاثرہ کیسوں کی تعداد کے ساتھ کیسے تعلق رکھتی ہے۔\n",
"* بصری طور پر انفیکشن کی شرح اور اموات کی شرح کا تعلق دیکھ کر اور کچھ انوکھے واقعات کی تلاش کر کے معلوم کریں کہ ایک عام بیماری کتنی دیر تک رہتی ہے۔ یہ معلوم کرنے کے لیے آپ کو مختلف ممالک کو دیکھنا پڑ سکتا ہے۔\n",
"* جان لیوا شرح کا حساب لگائیں اور دیکھیں کہ یہ وقت کے ساتھ کیسے بدلتی ہے۔ حسابات کرنے سے پہلے آپ بیماری کی مدت کو دنوں میں مدنظر رکھتے ہوئے ایک وقت کی سیریز کو تبدیل کرنا چاہیں گے۔\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## حوالہ جات\n",
"## حوالے\n",
"\n",
"آپ درج ذیل اشاعتوں میں COVID وبائی مرض کی مزید مطالعات دیکھ سکتے ہیں:\n",
"* [COVID وبا کے دوران Rt کے اندازے کے لیے سلائیڈنگ SIR ماڈل](https://soshnikov.com/science/sliding-sir-model-for-rt-estimation/)، بلاگ پوسٹ از [Dmitry Soshnikov](http://soshnikov.com)\n",
"* T.Petrova, D.Soshnikov, A.Grunin. [عالمی COVID-19 وبا کے لیے وقت پر منحصر تولیدی نمبر کا اندازہ](https://www.preprints.org/manuscript/202006.0289/v1)۔ *Preprints* **2020**, 2020060289 (doi: 10.20944/preprints202006.0289.v1)\n",
"* [مندرجہ بالا مقالے کا کوڈ GitHub پر](https://github.com/shwars/SlidingSIR)\n"
"آپ درج ذیل اشاعتوں میں COVID وبا کی پھیلاؤ پر مزید مطالعات دیکھ سکتے ہیں:\n",
"* [COVID وبا کے دوران Rt تخمینہ کے لیے سلائیڈنگ SIR ماڈل](https://soshnikov.com/science/sliding-sir-model-for-rt-estimation/)، بلاگ پوسٹ از [Dmitry Soshnikov](http://soshnikov.com)\n",
"* T.Petrova, D.Soshnikov, A.Grunin۔ [عالمی COVID-19 پھیلاؤ کے لیے وقت کے لحاظ سے منحصر تولیدی نمبر کا تخمینہ](https://www.preprints.org/manuscript/202006.0289/v1)۔ *Preprints* **2020**, 2020060289 (doi: 10.20944/preprints202006.0289.v1)\n",
"* [GitHub پر مذکورہ مقالے کا کوڈ](https://github.com/shwars/SlidingSIR)\n"
]
},
{
@ -2423,7 +2425,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"---\n\n<!-- CO-OP TRANSLATOR DISCLAIMER START -->\n**ڈس کلیمر**:\nاس دستاویز کا ترجمہ AI ترجمہ خدمت [Co-op Translator](https://github.com/Azure/co-op-translator) کے ذریعے کیا گیا ہے۔ اگرچہ ہم درستگی کے لیے کوشاں ہیں، براہ کرم اس بات سے آگاہ رہیں کہ خودکار ترجموں میں غلطیاں یا غیر یقینی معلومات ہو سکتی ہیں۔ اصل دستاویز کو اس کی مادری زبان میں مستند ماخذ سمجھا جانا چاہیے۔ اہم معلومات کے لیے پیشہ ور انسانی ترجمہ کی سفارش کی جاتی ہے۔ ہم اس ترجمے کے استعمال سے پیدا ہونے والی کسی بھی غلط فہمی یا غلط تفسیر کے ذمہ دار نہیں ہیں۔\n<!-- CO-OP TRANSLATOR DISCLAIMER END -->\n"
"---\n\n<!-- CO-OP TRANSLATOR DISCLAIMER START -->\n**ڈس کلیمر**:\nیہ دستاویز AI ترجمہ سروس [Co-op Translator](https://github.com/Azure/co-op-translator) کے ذریعے ترجمہ کی گئی ہے۔ جبکہ ہم درستگی کے لیے کوشاں ہیں، براہ کرم اس بات سے آگاہ رہیں کہ خودکار ترجمے میں غلطیاں یا عدم درستیاں ہو سکتی ہیں۔ اصل دستاویز اپنے مادری زبان میں مستند ماخذ سمجھی جائے گی۔ حساس معلومات کے لیے پیشہ ور انسانی ترجمہ کی سفارش کی جاتی ہے۔ اس ترجمے کے استعمال سے پیدا ہونے والی کسی بھی غلط فہمی یا غلط تشریح کی ذمہ داری ہم قبول نہیں کرتے۔\n<!-- CO-OP TRANSLATOR DISCLAIMER END -->\n"
]
}
],

@ -1,31 +1,33 @@
# خطرناک تعلقات ڈیٹا ویژولائزیشن پروجیکٹ
شروع کرنے کے لیے، یہ یقینی بنائیں کہ آپ کے سسٹم پر NPM اور Node انسٹال اور چل رہے ہیں۔ ڈپینڈنسیز انسٹال کریں (npm install) اور پھر پروجیکٹ کو لوکل طور پر چلائیں (npm run serve):
شروع کرنے کے لیے، آپ کو یہ یقینی بنانا ہوگا کہ آپ کے کمپیوٹر پر NPM اور Node **>=20.0.0** چل رہے ہیں۔ انحصاریوں کو انسٹال کریں (npm install) اور پھر پروجیکٹ کو لوکل طور پر چلائیں (npm run serve):
## پروجیکٹ سیٹ اپ
```
npm install
```
### ڈیولپمنٹ کے لیے کمپائل اور ہاٹ ری لوڈ
### ترقی کے لیے کمپائل اور ہاٹ ری لوڈ کریں
```
npm run serve
```
### پروڈکشن کے لیے کمپائل اور منیفائی
### پیداوار کے لیے کمپائل اور کم حجم کریں
```
npm run build
```
### فائلز کو لنٹ اور درست کریں
### فائلوں کی لینٹ اور اصلاح کریں
```
npm run lint
```
### کنفیگریشن کو حسب ضرورت بنائیں
[کنفیگریشن ریفرنس](https://cli.vuejs.org/config/) دیکھیں۔
### ترتیب کو حسب ضرورت بنائیں
ملاحظہ کریں [Configuration Reference](https://cli.vuejs.org/config/)۔
---
**ڈس کلیمر**:
یہ دستاویز AI ترجمہ سروس [Co-op Translator](https://github.com/Azure/co-op-translator) کا استعمال کرتے ہوئے ترجمہ کی گئی ہے۔ ہم درستگی کے لیے کوشش کرتے ہیں، لیکن براہ کرم آگاہ رہیں کہ خودکار ترجمے میں غلطیاں یا عدم درستگی ہو سکتی ہیں۔ اصل دستاویز کو اس کی اصل زبان میں مستند ذریعہ سمجھا جانا چاہیے۔ اہم معلومات کے لیے، پیشہ ور انسانی ترجمہ کی سفارش کی جاتی ہے۔ اس ترجمے کے استعمال سے پیدا ہونے والی کسی بھی غلط فہمی یا غلط تشریح کے لیے ہم ذمہ دار نہیں ہیں۔
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**ڈس کلیمر**:
یہ دستاویز AI ترجمہ سروس [Co-op Translator](https://github.com/Azure/co-op-translator) کے ذریعے ترجمہ کی گئی ہے۔ جبکہ ہم درستگی کے لیے کوشاں ہیں، براہ کرم اس بات سے آگاہ رہیں کہ خودکار ترجمے میں غلطیاں یا عدم درستیاں ہو سکتی ہیں۔ اصل دستاویز اپنے مادری زبان میں مستند ماخذ سمجھی جائے گی۔ حساس معلومات کے لیے پیشہ ور انسانی ترجمہ کی سفارش کی جاتی ہے۔ اس ترجمے کے استعمال سے پیدا ہونے والی کسی بھی غلط فہمی یا غلط تشریح کی ذمہ داری ہم قبول نہیں کرتے۔
<!-- CO-OP TRANSLATOR DISCLAIMER END -->

@ -1,31 +1,33 @@
# خطرناک تعلقات ڈیٹا ویژولائزیشن پروجیکٹ
# ڈیینجرس لیزنز ڈیٹا ویژولائزیشن پروجیکٹ
شروع کرنے کے لیے، یہ یقینی بنائیں کہ آپ کے سسٹم پر NPM اور Node انسٹال اور چل رہے ہیں۔ ڈپینڈنسیز انسٹال کریں (npm install) اور پھر پروجیکٹ کو لوکل طور پر چلائیں (npm run serve):
شروع کرنے کے لیے، آپ کو یہ یقینی بنانا ہوگا کہ آپ کے کمپیوٹر پر NPM اور Node **>=20.0.0** چل رہے ہیں۔ انحصاریات انسٹال کریں (npm install) اور پھر پروجیکٹ کو لوکل طور پر چلائیں (npm run serve):
## پروجیکٹ سیٹ اپ
```
npm install
```
### ڈیولپمنٹ کے لیے کمپائل اور ہاٹ ری لوڈ
### ڈیویلپمنٹ کے لیے کمپائل اور ہاٹ-ری لوڈ کرتا ہے
```
npm run serve
```
### پروڈکشن کے لیے کمپائل اور منیفائی
### پروڈکشن کے لیے کمپائل اور منیفائ کرتا ہے
```
npm run build
```
### فائلز کو لنٹ اور درست کریں
### فائلوں کی لینٹ اور فکس کرتا ہے
```
npm run lint
```
### کنفیگریشن کو حسب ضرورت بنائیں
[کنفیگریشن ریفرنس](https://cli.vuejs.org/config/) دیکھیں۔
### کنفیگریشن کو اپنی مرضی کے مطابق بنائیں
دیکھیں [Configuration Reference](https://cli.vuejs.org/config/)۔
---
**ڈسکلیمر**:
یہ دستاویز AI ترجمہ سروس [Co-op Translator](https://github.com/Azure/co-op-translator) کا استعمال کرتے ہوئے ترجمہ کی گئی ہے۔ ہم درستگی کے لیے کوشش کرتے ہیں، لیکن براہ کرم آگاہ رہیں کہ خودکار ترجمے میں غلطیاں یا عدم درستگی ہو سکتی ہیں۔ اصل دستاویز کو اس کی اصل زبان میں مستند ذریعہ سمجھا جانا چاہیے۔ اہم معلومات کے لیے، پیشہ ور انسانی ترجمہ کی سفارش کی جاتی ہے۔ اس ترجمے کے استعمال سے پیدا ہونے والی کسی بھی غلط فہمی یا غلط تشریح کے لیے ہم ذمہ دار نہیں ہیں۔
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**ڈس کلیمر**:
یہ دستاویز AI ترجمہ سروس [Co-op Translator](https://github.com/Azure/co-op-translator) کے ذریعے ترجمہ کی گئی ہے۔ جبکہ ہم درستگی کے لیے کوشاں ہیں، براہ کرم اس بات سے آگاہ رہیں کہ خودکار ترجمے میں غلطیاں یا عدم درستیاں ہو سکتی ہیں۔ اصل دستاویز اپنے مادری زبان میں مستند ماخذ سمجھی جائے گی۔ حساس معلومات کے لیے پیشہ ور انسانی ترجمہ کی سفارش کی جاتی ہے۔ اس ترجمے کے استعمال سے پیدا ہونے والی کسی بھی غلط فہمی یا غلط تشریح کی ذمہ داری ہم قبول نہیں کرتے۔
<!-- CO-OP TRANSLATOR DISCLAIMER END -->

@ -12,8 +12,8 @@
"language_code": "zh-CN"
},
"1-Introduction/01-defining-data-science/notebook.ipynb": {
"original_hash": "8f5eb7b3f7cc89e6d98fb32e1de65dec",
"translation_date": "2026-02-28T08:15:40+00:00",
"original_hash": "8eb07e3d899aaba7ea9c9ec9b5aa2850",
"translation_date": "2026-07-17T21:17:54+00:00",
"source_file": "1-Introduction/01-defining-data-science/notebook.ipynb",
"language_code": "zh-CN"
},
@ -42,8 +42,8 @@
"language_code": "zh-CN"
},
"1-Introduction/03-defining-data/README.md": {
"original_hash": "12339119c0165da569a93ddba05f9339",
"translation_date": "2025-09-05T11:40:07+00:00",
"original_hash": "7217c6f9eb464d4ff4bae6c036ab53cb",
"translation_date": "2026-07-17T21:20:25+00:00",
"source_file": "1-Introduction/03-defining-data/README.md",
"language_code": "zh-CN"
},
@ -65,6 +65,12 @@
"source_file": "1-Introduction/04-stats-and-probability/assignment.md",
"language_code": "zh-CN"
},
"1-Introduction/04-stats-and-probability/notebook.ipynb": {
"original_hash": "0c77e104b29c723287bf11b773fcc5d5",
"translation_date": "2026-07-17T21:18:58+00:00",
"source_file": "1-Introduction/04-stats-and-probability/notebook.ipynb",
"language_code": "zh-CN"
},
"1-Introduction/README.md": {
"original_hash": "696a8474a01054281704cbfb09148949",
"translation_date": "2025-08-25T16:37:59+00:00",
@ -108,8 +114,8 @@
"language_code": "zh-CN"
},
"2-Working-With-Data/07-python/notebook-covidspread.ipynb": {
"original_hash": "6335cccba01dc6ad7b15aba7a8c73f38",
"translation_date": "2026-02-28T08:16:53+00:00",
"original_hash": "da97f98781c7cd271063f605fe8d71d0",
"translation_date": "2026-07-17T21:17:23+00:00",
"source_file": "2-Working-With-Data/07-python/notebook-covidspread.ipynb",
"language_code": "zh-CN"
},
@ -192,14 +198,14 @@
"language_code": "zh-CN"
},
"3-Data-Visualization/13-meaningful-visualizations/solution/README.md": {
"original_hash": "5c51a54dd89075a7a362890117b7ed9e",
"translation_date": "2025-08-25T18:03:58+00:00",
"original_hash": "2b3b2632bb02af608ca60be828e8097d",
"translation_date": "2026-07-17T21:20:32+00:00",
"source_file": "3-Data-Visualization/13-meaningful-visualizations/solution/README.md",
"language_code": "zh-CN"
},
"3-Data-Visualization/13-meaningful-visualizations/starter/README.md": {
"original_hash": "5c51a54dd89075a7a362890117b7ed9e",
"translation_date": "2025-08-25T18:03:21+00:00",
"original_hash": "2b3b2632bb02af608ca60be828e8097d",
"translation_date": "2026-07-17T21:20:29+00:00",
"source_file": "3-Data-Visualization/13-meaningful-visualizations/starter/README.md",
"language_code": "zh-CN"
},

File diff suppressed because one or more lines are too long

@ -1,70 +1,71 @@
# 定义数据
|![ Sketchnote by [(@sketchthedocs)](https://sketchthedocs.dev) ](../../sketchnotes/03-DefiningData.png)|
|![ 草图笔记由 [(@sketchthedocs)](https://sketchthedocs.dev) 提供 ](../../sketchnotes/03-DefiningData.png)|
|:---:|
|定义数据 - _Sketchnote by [@nitya](https://twitter.com/nitya)_ |
|定义数据 - _草图笔记作者 [@nitya](https://twitter.com/nitya)_ |
数据是用于发现和支持明智决策的事实、信息、观察和测量。数据点是数据集中的单个数据单位,而数据集是数据点的集合。数据集可能有不同的格式和结构,通常基于其来源或数据的来源。例如,一家公司每月的收入可能存储在电子表格中,而智能手表的每小时心率数据可能是 [JSON](https://stackoverflow.com/a/383699) 格式。数据科学家通常需要处理数据集中不同类型的数据。
数据是用来发现新知和支持知情决策的事实、信息、观察和测量结果。数据点是一组数据中的单个数据单元,而数据集是由多个数据点组成的集合。数据集可能有不同的格式和结构,通常取决于其来源或数据的出处。例如,一家公司的月度收入可能存储在电子表格中,而来自智能手表的每小时心率数据则可能是 [JSON](https://stackoverflow.com/a/383699) 格式。数据科学家经常需要在同一数据集中处理不同类型的数据。
本课程重点是根据数据的特性和来源来识别和分类数据。
本课聚焦于根据特点和来源识别和分类数据。
## [课前测验](https://ff-quizzes.netlify.app/en/ds/quiz/4)
## 数据的描述方式
### 原始数据
原始数据是从其来源获得的初始状态数据,尚未经过分析或组织。为了理解数据集中的情况,需要将其组织成一种人类和技术都能理解的格式。数据集的结构描述了它的组织方式,可以分为结构化、非结构化和半结构化。这些结构类型会因来源而异,但最终会归入这三类。
原始数据是从其来源以初始状态获取的数据,未被分析或组织。为了理解数据集中的内容,需要将其组织成既能被人类理解,也能被技术进一步分析的格式。数据集的结构描述了其组织方式,可分为结构化、非结构化和半结构化。这些结构类型会因来源不同而变化,但最终均属于这三类。
### 定量数据
定量数据是数据集中的数值观察通常可以进行分析、测量并用于数学计算。一些定量数据的例子包括一个国家的人口、一个人的身高或一家公司季度收入。通过进一步分析定量数据可以用于发现空气质量指数AQI的季节性趋势或估算典型工作日的高峰时段交通概率。
定量数据是数据集中的数值型观察可被分析、测量并用于数学运算。定量数据的例子包括国家人口、个人身高或公司季度收益。通过深入分析定量数据可以用于发现空气质量指数AQI的季节性趋势或估计工作日高峰期交通拥堵的概率。
### 定性数据
定性数据,也称为类数据,是无法像定量数据那样客观测量的观察数据。它通常是各种主观数据格式,用于捕捉某物的质量,例如产品或过程。有时,定性数据是数值形式,但通常不会用于数学计算,例如电话号码或时间戳。一些定性数据的例子包括:视频评论、汽车的品牌和型号或你最亲密朋友最喜欢的颜色。定性数据可以用于了解消费者最喜欢哪些产品或识别求职简历中的热门关键词。
定性数据,也称为类数据,是无法像定量数据那样客观测量的数据。它通常表现为各种主观数据,捕捉某物的质量,例如产品或过程。有时定性数据以数字形式存在,但通常不用于数学运算,如电话号码或时间戳。定性数据的例子包括:视频评论、汽车的品牌和型号,或你最亲近朋友的最爱颜色。定性数据可用于了解消费者最喜欢哪些产品,或识别求职简历中的热门关键词。
### 结构化数据
结构化数据是以行和列组织的数据,其中每一行都有相同的一组列。列表示特定类型的值,并通过名称描述值的含义,而行包含实际的值。列通常会有一组特定的规则或限制,以确保值准确地表示列。例如,想象一个客户的电子表格,其中每一行必须有一个电话号码,并且电话号码不能包含字母字符。可能会对电话号码列应用规则,确保它永远不为空且只包含数字。
结构化数据是组织成行和列的数据,每行拥有相同的列集合。列代表某种特定类型的值,并以名称标识该值所代表的内容,而行包含具体的数值。列通常有一套特定规则或限制,以确保其值准确反映该列。例如,假设一个客户电子表格里每行必须包含电话号码,且电话号码不包含字母字符。电话号码列可能有规则确保其不为空且仅包含数字。
结构化数据的一个优势是可以以某种方式组织,使其与其他结构化数据相关联。然而,由于数据设计为以特定方式组织,改变其整体结构可能需要大量努力。例如,向客户电子表格添加一个不能为空的电子邮件列意味着需要弄清楚如何为数据集中现有的客户行添加这些值。
结构化数据的优点是它可以以某种方式组织,使其能与其他结构化数据相关联。然而,由于数据设计为按照特定方式组织,改变其整体结构往往需要大量努力。例如,在客户电子表格中新增一个不可为空的邮箱列时,需要想办法为数据集中已有的客户行填充该邮箱列的值。
结构化数据的例子:电子表格、关系数据库、电话号码、银行对账单
结构化数据示例:电子表格、关系型数据库、电话号码、银行账单
### 非结构化数据
非结构化数据通常无法分类为行或列也没有格式或规则可遵循。由于非结构化数据对其结构的限制较少与结构化数据相比添加新信息更容易。如果一个传感器每两分钟捕获一次气压数据并收到更新后可以测量和记录温度那么如果数据是非结构化的就不需要更改现有数据。然而这可能会使分析或调查这种类型的数据变得更耗时。例如一位科学家想从传感器数据中找到上个月的平均温度但发现传感器在某些记录数据中标记了一个“e”表示它坏了而不是典型的数字这意味着数据不完整。
非结构化数据通常无法归类到行或列中且没有格式或规则可循。由于对结构的限制较少相较于结构化数据更容易添加新信息。例如一个每两分钟记录一次气压的传感器如果升级后允许测量并记录温度只要数据是非结构化的就无需改动现有数据。然而这可能会使分析或调查这类数据所花时间更长。比如一位科学家想根据传感器数据计算上个月的平均温度但发现传感器记录的数据中有些位置用“e”替代数值表示传感器故障导致数据不完整。
非结构化数据的例子:文本文件、短信、视频文件
非结构化数据示例:文本文件、短信、视频文件
### 半结构化数据
半结构化数据具有使其成为结构化和非结构化数据结合的特征。它通常不符合行和列的格式,但以一种被认为是结构化的方式组织,并可能遵循固定格式或规则。结构会因来源而异,例如从定义明确的层次结构到更灵活的结构,允许轻松集成新信息。元数据是帮助决定数据如何组织和存储的指标,并根据数据类型有各种名称。一些常见的元数据名称包括标签、元素、实体和属性。例如,一封典型的电子邮件消息会有主题、正文和一组收件人,并可以根据发送者或发送时间进行组织。
半结构化数据具有结构化和非结构化数据的混合特征。它通常不符合行列格式,但以被视为结构化的方式组织,可能遵循固定格式或规则。具体结构会因来源不同而变化,从严格定义的层级到允许灵活集成新信息的方式不等。元数据是帮助决定数据如何组织和存储的指示器,且名称因数据类型不同而各异。元数据的常见名称有标签、元素、实体和属性。例如,一封典型电子邮件包括主题、正文和收件人列表,可按发送人或发送时间进行组织。
半结构化数据的例子HTML、CSV 文件、JavaScript Object Notation (JSON)
半结构化数据示例HTML、CSV 文件、JavaScript 对象表示法 (JSON)
## 数据来源
数据来源是数据生成的初始位置或数据“存储”的地方,会因数据的收集方式和时间而异。由用户生成的数据称为原始数据,而二手数据来自为一般用途收集数据的来源。例如,一组科学家在雨林中收集观察数据被认为是原始数据,而如果他们决定与其他科学家分享,则对使用这些数据的人来说是二手数据。
数据来源是数据生成的初始位置或“存放地点”,根据采集方式和时间不同而异。由用户生成的数据称为初级数据,而由其他来源收集并供一般用途的数据称为次级数据。例如,一组科学家在雨林中收集观察数据,此数据即为初级数据;如果他们决定与其他科学家共享,则这些其他科学家使用时该数据为次级数据。
数据库是常见的数据来源,依赖数据库管理系统来托管和维护数据,用户通过称为查询的命令来探索数据。作为数据来源的文件可以是音频、图像和视频文件,也可以是像 Excel 这样的电子表格。互联网来源是托管数据的常见位置可以找到数据库和文件。应用程序编程接口API允许程序员通过互联网创建与外部用户共享数据的方法而网页抓取则从网页中提取数据。[《处理数据》课程](../../../../../../../../../2-Working-With-Data)重点介绍如何使用各种数据来源。
数据库是一种常见的数据来源,依靠数据库管理系统托管和维护数据,用户通过称为查询的命令进行数据探索。文件作为数据来源可以是音频、图像和视频文件,也可以是 Excel 等电子表格。因特网是托管数据的常见位置既有数据库也有文件。应用程序接口API允许程序员通过互联网与外部用户共享数据而网页抓取则从网页提取数据。[处理数据课程](../../../../../../../../../2-Working-With-Data) 聚焦于如何使用各种数据来源。
## 总结
在本课程中,我们学习了:
本课我们学到了:
- 什么是数据
- 数据的描述方式
- 数据的分类和归类方式
- 数据的来源
- 数据如何被描述
- 数据如何分类和归类
- 数据在哪些地方可以找到
## 🚀 挑战
Kaggle 是一个优秀的开放数据集来源。使用 [数据集搜索工具](https://www.kaggle.com/datasets) 找到一些有趣的数据集,并根据以下标准分类 3-5 个数据集:
Kaggle 是一个极好的开放数据集来源。使用 [数据集搜索工具](https://www.kaggle.com/datasets) 找到一些有趣的数据集,并用以下标准分类3-5个数据集:
- 数据是定量还是定性?
- 数据是结构化、非结构化还是半结构化?
## [课后测验](https://ff-quizzes.netlify.app/en/ds/quiz/5)
## 复习与自学
- Microsoft Learn 单元 [分类你的数据](https://docs.microsoft.com/en-us/learn/modules/choose-storage-approach-in-azure/2-classify-data) 对结构化、半结构化和非结构化数据进行了详细的分类
- 本微软学习单元,标题为 [识别数据格式](https://learn.microsoft.com/en-us/training/modules/explore-core-data-concepts/2-data-formats?pivots=text),详细介绍了结构化、半结构化和非结构化数据
## 作业
@ -72,5 +73,7 @@ Kaggle 是一个优秀的开放数据集来源。使用 [数据集搜索工具](
---
**免责声明**
本文档使用AI翻译服务[Co-op Translator](https://github.com/Azure/co-op-translator)进行翻译。尽管我们努力确保准确性,但请注意,自动翻译可能包含错误或不准确之处。应以原始语言的文档作为权威来源。对于关键信息,建议使用专业人工翻译。因使用本翻译而导致的任何误解或误读,我们概不负责。
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**免责声明**
本文件由 AI 翻译服务 [Co-op Translator](https://github.com/Azure/co-op-translator) 翻译完成。尽管我们力求准确,但请注意,自动翻译可能包含错误或不准确之处。原始语言版文件应视为权威来源。对于重要信息,建议使用专业人工翻译。我们对因使用本翻译而产生的任何误解或误释不承担责任。
<!-- CO-OP TRANSLATOR DISCLAIMER END -->

@ -4,8 +4,8 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"# 概率与统计简介\n",
"在本笔记本中,我们将练习一些之前讨论过的概念。许多概率与统计的概念在用于数据处理的主要Python库中都有良好的体现如 `numpy` 和 `pandas`。\n"
"# 概率与统计入门\n",
"在本笔记本中,我们将玩转一些之前讨论过的概念。许多概率与统计的概念都在 Python 的主要数据处理库中得到了很好的体现,如 `numpy` 和 `pandas`。\n"
]
},
{
@ -25,7 +25,7 @@
"metadata": {},
"source": [
"## 随机变量和分布\n",
"让我们从 0 9 的均匀分布中抽取一个包含 30 个值的样本。我们还将计算均值和方差。\n"
"让我们从0到9的均匀分布中抽取30个值的样本。我们还将计算均值和方差。\n"
]
},
{
@ -44,7 +44,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"为了直观估计样本中有多少不同的值,我们可以绘制**直方图**\n"
"为了直观估计样本中有多少不同的值,我们可以绘制<strong>直方图</strong>\n"
]
},
{
@ -63,7 +63,7 @@
"source": [
"## 分析真实数据\n",
"\n",
"均值和方差在分析现实世界数据时非常重要。让我们加载关于棒球运动员的数据,来自 [SOCR MLB Height/Weight Data](http://wiki.stat.ucla.edu/socr/index.php/SOCR_Data_MLB_HeightsWeights)\n"
"均值和方差在分析现实世界数据时非常重要。让我们加载关于棒球运动员的数据,来自 [SOCR MLB Height/Weight Data](http://wiki.stat.ucla.edu/socr/index.php/SOCR_Data_MLB_HeightsWeights)\n"
]
},
{
@ -80,7 +80,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"> 我们这里使用了一个名为[**Pandas**](https://pandas.pydata.org/)的软件包来进行数据分析。我们将在本课程后面讨论更多关于Pandas和在Python中处理数据的内容。\n",
"> 我们这里使用了一个名为[**Pandas**](https://pandas.pydata.org/)的软件包进行数据分析。在本课程后面我们将更多地讨论Pandas以及在Python中处理数据的方法。\n",
"\n",
"让我们计算年龄、身高和体重的平均值:\n"
]
@ -98,7 +98,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"现在让我们关注身高,并计算标准差和方差:\n"
"现在让我们关注身高,并计算标准差和方差: \n"
]
},
{
@ -126,7 +126,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"除了均值外,查看中位数和四分位数也是有意义的。它们可以通过**箱线图**来可视化:\n"
"除了均值外,查看中位数和四分位数也是有意义的。它们可以用<strong>箱线图</strong>来可视化:\n"
]
},
{
@ -136,7 +136,7 @@
"outputs": [],
"source": [
"plt.figure(figsize=(10,2))\n",
"plt.boxplot(df['Height'].ffill(), vert=False, showmeans=True)\n",
"plt.boxplot(df['Height'].ffill(), orientation='horizontal', showmeans=True)\n",
"plt.grid(color='gray', linestyle='dotted')\n",
"plt.tight_layout()\n",
"plt.show()"
@ -146,7 +146,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"我们还可以制作数据集子集的箱线图,例如按球员角色分组。\n"
"我们还可以绘制我们数据集子集的箱线图,例如按球员角色分组。\n"
]
},
{
@ -165,9 +165,9 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"> **注意**:该图表表明,平均来看,一垒手的身高高于二垒手的身高。稍后我们将学习如何更正式地检验这个假设,以及如何证明我们的数据在统计上有显著性以支持该结论。\n",
"> <strong>注意</strong>:该图表表明,平均来看,一垒手的身高高于二垒手的身高。稍后我们将学习如何更正式地检验这一假设,以及如何证明我们的数据在统计学上具有显著性以支持这一点。 \n",
"\n",
"年龄、身高和体重都是连续随机变量。你认为它们的分布是什么样的?发现答案的一个好方法是绘制数值的直方图:\n"
"年龄、身高和体重都是连续随机变量。你认为它们的分布是什么?一种很好的方法是绘制这些值的直方图: \n"
]
},
{
@ -190,7 +190,7 @@
"source": [
"## 正态分布\n",
"\n",
"让我们创建一个人工权重样本,该样本服从与我们的真实数据相同均值和方差的正态分布:\n"
"让我们创建一个人工的权重样本,它遵循与我们真实数据相同均值和方差的正态分布:\n"
]
},
{
@ -231,7 +231,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"由于现实生活中的大多数数值服从正态分布,因此我们不应该使用均匀随机数生成器来生成样本数据。以下是尝试使用均匀分布(由 `np.random.rand` 生成)生成体重时的情况:\n"
"由于现实生活中的大多数数值呈正态分布,我们不应该使用均匀分布的随机数生成器来生成样本数据。以下是尝试用均匀分布(由 `np.random.rand` 生成)生成体重时的情况:\n"
]
},
{
@ -253,7 +253,7 @@
"source": [
"## 置信区间\n",
"\n",
"现在让我们计算棒球运动员体重和身高的置信区间。我们将使用[这个stackoverflow讨论](https://stackoverflow.com/questions/15033511/compute-a-confidence-interval-from-sample-data)中的代码:\n"
"现在让我们计算棒球运动员体重和身高的置信区间。我们将使用[这个stackoverflow讨论](https://stackoverflow.com/questions/15033511/compute-a-confidence-interval-from-sample-data)中的代码:\n"
]
},
{
@ -272,7 +272,7 @@
" return m, h\n",
"\n",
"for p in [0.85, 0.9, 0.95]:\n",
" m, h = mean_confidence_interval(df['Weight'].fillna(method='pad'),p)\n",
" m, h = mean_confidence_interval(df['Weight'].ffill(),p)\n",
" print(f\"p={p:.2f}, mean = {m:.2f} ± {h:.2f}\")"
]
},
@ -282,7 +282,7 @@
"source": [
"## 假设检验\n",
"\n",
"让我们探索棒球运动员数据集中不同的角色:\n"
"让我们探索一下棒球运动员数据集中不同的角色:\n"
]
},
{
@ -298,7 +298,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"让我们来检验一项假设:一垒手比二垒手更高。最简单的方法是检验置信区间:\n"
"让我们测试一垒手比二垒手更高的假设。最简单的方法是测试置信区间:\n"
]
},
{
@ -319,7 +319,7 @@
"source": [
"我们可以看到这些区间没有重叠。\n",
"\n",
"一种统计上更正确的验证假设的方法是使用**Student t检验**\n"
"证明假设一个统计学上更正确的方法是使用<strong>Student t 检验</strong>\n"
]
},
{
@ -339,8 +339,8 @@
"metadata": {},
"source": [
"`ttest_ind` 函数返回的两个值是:\n",
"* p 值可以被视为两个分布具有相同均值的概率。在我们的例子中,非常低,这意味着有强有力的证据支持一垒手更高。\n",
"* t 值是用于 t 检验的标准化均值差的中间值,并且它会与给定置信度的阈值进行比较。\n"
"* p 值可以被视为两个分布具有相同均值的概率。在我们的例子中,该值非常低,这意味着有强有力的证据支持一垒手更高。\n",
"* t 值是归一化均值差异的中间值,用于 t 检验,并与给定置信度的阈值进行比较。\n"
]
},
{
@ -349,7 +349,7 @@
"source": [
"## 使用中心极限定理模拟正态分布\n",
"\n",
"Python 中的伪随机生成器设计为产生均匀分布。如果我们想创建一个正态分布的生成器,可以使用中心极限定理。为了获得一个正态分布的值,我们只需计算一个均匀生成样本的平均值。\n"
"Python 中的伪随机数生成器旨在为我们提供均匀分布。如果我们想创建一个正态分布的生成器,可以使用中心极限定理。获得一个正态分布的值,我们只需计算均匀生成样本的平均值。\n"
]
},
{
@ -375,7 +375,7 @@
"source": [
"## 相关性与邪恶棒球公司\n",
"\n",
"相关性使我们能够发现数据序列之间的关系。在我们的玩具示例中假设有一家邪恶的棒球公司根据球员的身高支付薪水——球员越高拿到的钱越多。假设有一个基本工资为1000美元并根据身高额外获得0到100美元的奖金。我们将采用MLB的真实球员数据计算他们的虚拟薪水:\n"
"相关性让我们能够找到数据序列之间的关系。在我们的玩具示例中假设有一个邪恶的棒球公司根据球员的身高来支付他们的薪水——球员越高获得的钱越多。假设基本工资是1000美元额外奖金从0到100美元取决于身高。我们将采用MLB的真实球员计算他们的虚拟薪水:\n"
]
},
{
@ -384,7 +384,7 @@
"metadata": {},
"outputs": [],
"source": [
"heights = df['Height'].fillna(method='pad')\n",
"heights = df['Height'].ffill()\n",
"salaries = 1000+(heights-heights.min())/(heights.max()-heights.mean())*100\n",
"print(list(zip(heights, salaries))[:10])"
]
@ -393,7 +393,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"现在让我们计算这些序列的协方差和相关系数。`np.cov` 将给我们所谓的**协方差矩阵**,这是协方差在多变量上的扩展。协方差矩阵 $M$ 的元素 $M_{ij}$ 是输入变量 $X_i$ 和 $X_j$ 之间的协方差,主对角线上的值 $M_{ii}$ 是 $X_i$ 的方差。类似地,`np.corrcoef` 会给我们**相关矩阵**。\n"
"现在让我们计算这些序列的协方差和相关系数。`np.cov` 会给我们一个所谓的<strong>协方差矩阵</strong>,它是协方差在多变量情况下的扩展。协方差矩阵 $M$ 的元素 $M_{ij}$ 是输入变量 $X_i$ 和 $X_j$ 之间的协方差,主对角线上的值 $M_{ii}$ 是 $X_{i}$ 的方差。类似地,`np.corrcoef` 会给我们<strong>相关系数矩阵</strong>。\n"
]
},
{
@ -411,7 +411,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"相关系数等于1表示两个变量之间存在强烈的**线性关系**。我们可以通过将一个值与另一个值绘制在图上直观地看到线性关系:\n"
"相关系数等于1意味着两个变量之间存在强烈的<strong>线性关系</strong>。我们可以通过绘制一个值相对于另一个值的图形来直观地看到线性关系:\n"
]
},
{
@ -430,7 +430,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"让我们看看如果关系不是线性会发生什么。假设我们的公司决定隐藏身高和薪水之间明显的线性依赖关系,并在公式中引入一些非线性,比如 `sin`\n"
"让我们看看如果关系不是线性会发生什么。假设我们的公司决定隐藏身高和薪资之间显而易见的线性依赖关系,并在公式中引入一些非线性,比如 `sin` \n"
]
},
{
@ -447,7 +447,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"在这种情况下,相关性略小,但仍然相当高。现在,为了让关系更不明显,我们可能想通过向工资中添加一些随机变量来增加额外的随机性。让我们看看会发生什么:\n"
"在这种情况下,相关性略小一些,但仍然相当高。现在,为了让这种关系更加不明显,我们可能想通过给工资添加一些随机变量来增加额外的随机性。让我们看看会发生什么:\n"
]
},
{
@ -476,9 +476,9 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"> 你能猜到为什么这些点会排列成这样的垂直线吗?\n",
"> 你能猜到为什么这些点会像这样排成竖线吗?\n",
"\n",
"我们已经观察到像工资这样的人为设计的概念与观察变量*身高*之间的相关性。让我们也看看两个观察变量,例如身高和体重,是否也相关\n"
"我们已经观察到了人工设计的概念(比如工资)和被观察变量<em>身高</em>之间的相关性。现在我们也来看一下两个被观察变量,比如身高和体重,是否也有相关性\n"
]
},
{
@ -494,11 +494,11 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"不幸的是,我们没有得到任何结果——只有一些奇怪的 `nan` 值。这是因为我们的序列中有些值未定义,表示为 `nan`,这导致运算结果也未定义。通过查看矩阵我们可以看到,`Weight` 是有问题的列,因为计算了 `Height` 值的自相关。\n",
"不幸的是,我们没有得到任何结果——只有一些奇怪的 `nan` 值。这是因为我们序列中的某些值未定义,被表示为 `nan`,这导致运算结果也未定义。通过查看矩阵,我们可以看到 `Weight` 是有问题的列,因为计算了 `Height` 值之间的自相关。\n",
"\n",
"> 这个例子展示了**数据准备**和**清理**的重要性。没有适当的数据,我们无法计算任何东西。\n",
"> 这个例子展示了<strong>数据准备</strong>和<strong>清理</strong>的重要性。没有适当的数据,我们无法计算任何东西。\n",
"\n",
"让我们使用 `fillna` 方法填充缺失值,并计算相关性:\n"
"让我们使用 `fillna` 方法填充缺失值,并计算相关性:\n"
]
},
{
@ -507,14 +507,14 @@
"metadata": {},
"outputs": [],
"source": [
"np.corrcoef(df['Height'].fillna(method='pad'), df['Weight'])"
"np.corrcoef(df['Height'].ffill(), df['Weight'])"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"确实存在相关性,但没有我们人工示例中那么强烈。实际上,如果我们查看一个值与另一个值的散点图,关系会明显不那么明显\n"
"的确存在相关性,但不像我们的人为示例中那样强烈。实际上,如果我们观察一个值与另一个值的散点图,关系会明显得多些\n"
]
},
{
@ -535,16 +535,16 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"## Conclusion\n",
"## 结论\n",
"\n",
"在本笔记本中,我们学习了如何对数据执行基本操作以计算统计函数。我们现在知道如何使用完善的数学和统计工具来验证某些假设,以及如何根据数据样本计算任意变量的置信区间。\n"
"在本笔记本中,我们学习了如何对数据执行基本操作以计算统计函数。我们现在知道如何使用一套健全的数学和统计工具来验证一些假设,以及如何针对给定的数据样本计算任意变量的置信区间。\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"---\n\n<!-- CO-OP TRANSLATOR DISCLAIMER START -->\n**免责声明** \n本文件由AI翻译服务[Co-op Translator](https://github.com/Azure/co-op-translator)翻译。我们尽力确保译文的准确性,但请注意自动翻译可能存在错误或不准确之处。原始文件的母语版本应被视为权威来源。对于关键信息,建议采用专业人工翻译。因使用本翻译而产生的任何误解或误释,我们概不负责。\n<!-- CO-OP TRANSLATOR DISCLAIMER END -->\n"
"---\n\n<!-- CO-OP TRANSLATOR DISCLAIMER START -->\n**免责声明**\n本文件由 AI 翻译服务 [Co-op Translator](https://github.com/Azure/co-op-translator) 翻译完成。尽管我们力求准确,但请注意,自动翻译可能包含错误或不准确之处。原始语言版文件应视为权威来源。对于重要信息,建议使用专业人工翻译。我们对因使用本翻译而产生的任何误解或误释不承担责任。\n<!-- CO-OP TRANSLATOR DISCLAIMER END -->\n"
]
}
],
@ -568,12 +568,6 @@
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.9.6"
},
"coopTranslator": {
"original_hash": "0f899e3c5019f948e7c787b22f3b2304",
"translation_date": "2026-01-16T09:17:01+00:00",
"source_file": "1-Introduction/04-stats-and-probability/notebook.ipynb",
"language_code": "zh"
}
},
"nbformat": 4,

@ -6,9 +6,9 @@
"source": [
"# COVID-19 大流行估计\n",
"\n",
"## 加载数据\n",
"## 数据加载\n",
"\n",
"我们将使用由[约翰斯·霍普金斯大学](https://jhu.edu/)的[系统科学与工程中心](https://systems.jhu.edu/)CSSE提供的 COVID-19 感染者数据。数据集可在[此 GitHub 仓库](https://github.com/CSSEGISandData/COVID-19)中获取。\n"
"我们将使用由[约翰斯·霍普金斯大学](https://jhu.edu/)的[系统科学与工程中心](https://systems.jhu.edu/)CSSE提供的 COVID-19 感染者数据。数据集可在[该 GitHub 仓库](https://github.com/CSSEGISandData/COVID-19)获得。\n"
]
},
{
@ -27,7 +27,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"我们可以使用 `pd.read_csv` 直接从 GitHub 加载最新数据。如果由于某些原因数据不可用,您也可以使用本地 `data` 文件夹中可用的副本——只需取消注释下面定义 `base_url` 的那一行即可\n"
"我们可以使用 `pd.read_csv` 直接从 GitHub 加载最新数据。如果数据因某种原因不可用,你总是可以使用 `data` 文件夹中本地的副本——只需取消注释下面定义 `base_url` 的那一行: \n"
]
},
{
@ -265,7 +265,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"我们可以看到表格的每一行定义了每个国家和/或省份的感染人数,列对应日期。类似的表格也可以用于加载其他数据,如康复人数和死亡人数。\n"
"我们可以看到表格的每一行定义了每个国家和/或省份的感染人数,列对应日期。类似的表格也可以加载其他数据,如康复人数和死亡人数。\n"
]
},
{
@ -284,7 +284,7 @@
"source": [
"## 理解数据\n",
"\n",
"从上表中省份列的作用不清楚。让我们来看一下 `Province/State` 列中存在的不同值:\n"
"从上表中,省份列的作用不明确。让我们看看 `Province/State` 列中存在的不同值:\n"
]
},
{
@ -322,7 +322,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"从这些名称中我们可以推断出,像澳大利亚和中国这样的国家有更详细的省份划分。让我们查找有关中国的信息来查看示例:\n"
"从名称上我们可以推断,像澳大利亚和中国这样的国家具有更详细的省级分类。让我们查找关于中国的信息以查看示例:\n"
]
},
{
@ -1323,7 +1323,7 @@
"source": [
"## 预处理数据\n",
"\n",
"我们不打算将国家进一步细分为更小的领土,因此我们首先会去除这种细分,并将所有领土的信息合并,以获取整个国家的信息。可以使用 `groupby` 来实现:\n"
"我们不想将国家细分为更小的地区,因此我们首先会去掉这种细分,把所有地区的信息汇总在一起,以获得整个国家的信息。这可以使用 `groupby` 实现:\n"
]
},
{
@ -1578,7 +1578,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"您可以看到,由于使用了 `groupby`,所有数据框现在都是以国家/地区为索引的。因此,我们可以使用 `.loc` 访问特定国家的数据:|\n"
"你可以看到,由于使用了 `groupby`,所有的 DataFrame 现在都以 Country/Region 作为索引。因此我们可以通过使用 `.loc` 来访问特定国家的数据:|\n"
]
},
{
@ -1607,7 +1607,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"> **注意** 我们如何使用 `[3:]` 来移除包含非日期元数据的序列中的前三个元素(省/州和地理位置列)。我们也可以完全删除这三列:\n"
"> <strong>注意</strong> 我们如何使用 `[3:]` 来移除包含非日期元数据(省/州和地理位置列)的序列的前三个元素。我们也可以完全删除这三列: \n"
]
},
{
@ -1627,7 +1627,7 @@
"source": [
"## 调查数据\n",
"\n",
"现在让我们切换到调查特定国家。让我们创建一个包含按日期索引的感染数据的框架:\n"
"现在让我们切换到调查某个特定国家。让我们创建一个包含按日期索引的感染数据的框架:\n"
]
},
{
@ -1793,7 +1793,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"现在让我们计算每天新增感染人数。这将使我们能够看到大流行的传播速度。最简单的方法是使用 `diff`\n"
"现在让我们计算每天新增感染人数。这将使我们能够看到疫情进展的速度。最简单的方法是使用 `diff`\n"
]
},
{
@ -1823,7 +1823,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"我们可以看到数据有很大的波动。让我们仔细看看其中一个月\n"
"我们可以看到数据中有较大的波动。让我们仔细看看其中一个月: \n"
]
},
{
@ -1852,7 +1852,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"数据显然存在每周波动。因为我们希望能够看到趋势,所以通过计算移动平均(即对于每一天,我们将计算前几天的平均值)来平滑曲线是有意义的\n"
"数据显然存在每周波动。因为我们希望能够看到趋势,所以通过计算滑动平均来平滑曲线是合理的(即对于每一天,我们将计算前几天的平均值):\n"
]
},
{
@ -1882,7 +1882,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"为了能够比较多个国家,我们可能需要考虑国家的人口数量,并比较感染者占国家人口的百分比。为了获得国家的人口数据,让我们加载国家数据集:\n"
"为了能够比较几个国家,我们可能想考虑国家的人口,并比较感染者占国家人口的百分比。为了获取国家的人口,让我们加载国家数据集:\n"
]
},
{
@ -2153,7 +2153,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"因为这个数据集包含了国家和省份的信息,所以要获得整个国家的人口,我们需要稍微聪明一点:\n"
"因为这个数据集包含关于国家和省份的信息,要获得整个国家的人口,我们需要稍微聪明一点: \n"
]
},
{
@ -2261,14 +2261,15 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"\n",
"## 计算 $R_t$\n",
"\n",
"为了了解疾病的传染性,我们查看**基本再生数** $R_0$,它表示一个感染者会进一步感染的人数。当 $R_0$ 大于1时疫情很可能会传播。\n",
"为了了解疾病的传染性,我们观察<strong>基本传染数</strong> $R_0$,它表示一个感染者会进一步感染多少人。当 $R_0$ 大于 1 时,疫情可能会蔓延。\n",
"\n",
"$R_0$ 是疾病本身的属性,不考虑人们为减缓疫情可能采取的一些防护措施。在疫情进行过程中,我们可以估计任意给定时间 $t$ 的再生数 $R_t$。有研究表明可以通过取8天的时间窗口近似估计该数值计算公式为 $$R_t=\\frac{I_{t-7}+I_{t-6}+I_{t-5}+I_{t-4}}{I_{t-3}+I_{t-2}+I_{t-1}+I_t}$$\n",
"其中 $I_t$ 是第 $t$ 天新感染个体的数量。\n",
"$R_0$ 是疾病本身的特性,不考虑人们可能采取的一些防护措施来减缓疫情传播。在疫情进展过程中,我们可以估计任意时间 $t$ 的传染数 $R_t$。已证明,这个数值可以通过取 8 天的时间窗口来粗略估计,并计算 $$R_t=\\frac{I_{t-7}+I_{t-6}+I_{t-5}+I_{t-4}}{I_{t-3}+I_{t-2}+I_{t-1}+I_t}$$\n",
"其中 $I_t$ 是第 $t$ 天的新感染人数。\n",
"\n",
"让我们计算我们疫情数据的 $R_t$。为此我们将对8个 `ninfected` 值进行滑动窗口操作,并应用上述函数计算该比率\n"
"我们来计算疫情数据中的 $R_t$。为此,我们将取 8 天的滚动窗口 `ninfected` 值,并应用上述函数计算比值\n"
]
},
{
@ -2298,9 +2299,9 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"您可以看到图表中存在一些间隙。这些间隙可能由 `NaN` 引起,也可能是数据集中存在 `inf` 值。`inf` 可能是由除以零引起的,而 `NaN` 则表示缺失数据,或者没有数据可用于计算结果(例如在我们的时间框架的最开始,滚动窗口宽度为 8 的数据尚不可用)。为了使图表更美观,我们需要使用 `replace` 和 `fillna` 函数填充这些值。\n",
"你可以看到图表中有一些空白。这些可能是由数据集中存在的 `NaN` 或 `inf` 值引起的。`inf` 可能是由除以 0 导致的,而 `NaN` 则表示缺失数据,或者没有足够的数据计算结果(就像在我们数据框的开头,滚动窗口宽度为 8 还不可用的时候)。为了让图表更美观,我们需要使用 `replace` 和 `fillna` 函数填充这些值。\n",
"\n",
"让我们进一步观察大流行的开始阶段。我们还将限制 y 轴的值,只显示低于 6 的值,以便更好地观察,并在 y=1 处绘制一条水平线。\n"
"让我们进一步看看疫情初期。我们还将限制 y 轴的值,仅显示低于 6 的数值,以便更好地观察,并在 y=1 处绘制一条水平线。\n"
]
},
{
@ -2331,7 +2332,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"另一个有趣的疫情指标是**导数**,或称**每日差异**,即新增病例的日变化。它使我们能够清楚地看到疫情何时在上升或下降。\n"
"疫情的另一个有趣指标是<strong>导数</strong>,或<strong>每日新增变化量</strong>。它让我们清楚地看到疫情何时在上升或下降。\n"
]
},
{
@ -2360,7 +2361,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"鉴于报告引起的数据存在大量波动,通过运行滚动平均来平滑曲线以获得整体情况是合理的。让我们再次关注疫情的最初几个月:\n"
"鉴于报告造成数据波动很大,通过运行滚动平均来平滑曲线以获得整体情况是有意义的。我们再一次关注大流行的最初几个月:\n"
]
},
{
@ -2390,14 +2391,15 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"\n",
"## 挑战\n",
"\n",
"现在是时候让你更多地玩转代码和数据了!以下是一些你可以尝试的建议\n",
"现在是你更多地与代码和数据互动的时候了!这里有一些建议供你尝试\n",
"* 查看不同国家的疫情传播情况。\n",
"* 在同一图上绘制多个国家的 $R_t$ 曲线以进行比较,或并排绘制多个图表。\n",
"* 查看死亡人数和康复人数与感染病例数的相关性。\n",
"* 尝试通过直观地关联感染率和死亡率,并寻找某些异常,来找出典型疾病持续的时间。你可能需要查看不同国家的数据来发现这一点。\n",
"* 计算致死率及其随时间的变化。你可能需要考虑疾病持续的天数,在计算前对一个时间序列进行时间上的平移。\n"
"* 在一张图上绘制多个国家的 $R_t$ 图以进行比较,或者将多个图并排显示\n",
"* 观察死亡人数和康复人数与感染病例数的相关性。\n",
"* 尝试通过直观关联感染率和死亡率并寻找一些异常,来了解一种典型疾病的持续时间。你可能需要查看不同国家的数据来发现这一点。\n",
"* 计算致死率及其随时间的变化。你可能需要考虑疾病持续的天数,从而在计算前对一个时间序列进行时间移位\n"
]
},
{
@ -2406,10 +2408,10 @@
"source": [
"## 参考文献\n",
"\n",
"您可以查看以下出版物中关于COVID疫情传播的更多研究:\n",
"* [COVID大流行期间Rt估计的滑动SIR模型](https://soshnikov.com/science/sliding-sir-model-for-rt-estimation/)由[Dmitry Soshnikov](http://soshnikov.com)发表的博客文章\n",
"* T.Petrova, D.Soshnikov, A.Grunin. [全球COVID-19爆发的时变再生数估计](https://www.preprints.org/manuscript/202006.0289/v1)。*Preprints* **2020**, 2020060289 (doi: 10.20944/preprints202006.0289.v1)\n",
"* [上述论文在GitHub上的代码](https://github.com/shwars/SlidingSIR)\n"
"您可以在以下出版物中查看关于COVID疫情传播的进一步研究:\n",
"* [COVID大流行期间Rt估计的滑动SIR模型](https://soshnikov.com/science/sliding-sir-model-for-rt-estimation/)博客文章作者 [Dmitry Soshnikov](http://soshnikov.com)\n",
"* T.Petrova, D.Soshnikov, A.Grunin. [全球COVID-19爆发的时变再生数估计](https://www.preprints.org/manuscript/202006.0289/v1)。 *Preprints* **2020**, 2020060289 (doi: 10.20944/preprints202006.0289.v1)\n",
"* [上述论文的代码在GitHub](https://github.com/shwars/SlidingSIR)\n"
]
},
{
@ -2423,7 +2425,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"---\n\n<!-- CO-OP TRANSLATOR DISCLAIMER START -->\n**免责声明**\n本文件使用 AI 翻译服务 [Co-op Translator](https://github.com/Azure/co-op-translator) 进行翻译。虽然我们力求准确,但请注意自动翻译可能包含错误或不准确之处。原始语言的文档应被视为权威来源。对于关键信息,建议采用专业人工翻译。对于因使用本翻译而产生的任何误解或误读,我们不承担任何责任。\n<!-- CO-OP TRANSLATOR DISCLAIMER END -->\n"
"---\n\n<!-- CO-OP TRANSLATOR DISCLAIMER START -->\n**免责声明**\n本文件由 AI 翻译服务 [Co-op Translator](https://github.com/Azure/co-op-translator) 翻译完成。尽管我们力求准确,但请注意,自动翻译可能包含错误或不准确之处。原始语言版文件应视为权威来源。对于重要信息,建议使用专业人工翻译。我们对因使用本翻译而产生的任何误解或误释不承担责任。\n<!-- CO-OP TRANSLATOR DISCLAIMER END -->\n"
]
}
],

@ -1,29 +1,33 @@
# 危险关系数据可视化项目
在开始之前,请确保您的计算机上已安装并运行了 NPM 和 Node。安装依赖项npm install然后在本地运行项目npm run serve
要开始,请确保你的机器上运行了 NPM 和 Node **>=20.0.0**。安装依赖npm install然后本地运行项目npm run serve
## 项目设置
```
npm install
```
### 编译并热加载用于开发
### 编译并热重载以进行开发
```
npm run serve
```
### 编译并压缩用于生产
### 编译并压缩用于生产环境
```
npm run build
```
### 检查并修复文件
### 语法检查并修复文件
```
npm run lint
```
### 自定义配置
请参阅[配置参考](https://cli.vuejs.org/config/)。
参见 [Configuration Reference](https://cli.vuejs.org/config/)。
**免责声明**
本文档使用AI翻译服务 [Co-op Translator](https://github.com/Azure/co-op-translator) 进行翻译。尽管我们努力确保翻译的准确性,但请注意,自动翻译可能包含错误或不准确之处。应以原始语言的文档作为权威来源。对于重要信息,建议使用专业人工翻译。我们对因使用此翻译而产生的任何误解或误读不承担责任。
---
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**免责声明**
本文件由 AI 翻译服务 [Co-op Translator](https://github.com/Azure/co-op-translator) 翻译完成。尽管我们力求准确,但请注意,自动翻译可能包含错误或不准确之处。原始语言版文件应视为权威来源。对于重要信息,建议使用专业人工翻译。我们对因使用本翻译而产生的任何误解或误释不承担责任。
<!-- CO-OP TRANSLATOR DISCLAIMER END -->

@ -1,29 +1,33 @@
# 危险关系数据可视化项目
# 危险关系数据可视化项目
开始之前,请确保您的电脑上已安装 NPM 和 Node。安装依赖项npm install然后在本地运行项目npm run serve
要开始,请确保你的机器上运行着 NPM 和 Node **>=20.0.0**。安装依赖npm install然后本地运行项目npm run serve
## 项目设置
```
npm install
```
### 编译并热加载开发环境
### 为开发编译并热重载
```
npm run serve
```
### 编译并压缩生产环境
### 为生产编译并压缩
```
npm run build
```
### 检查并修复文件
### 代码检查并修复文件
```
npm run lint
```
### 自定义配置
请参阅 [配置参考](https://cli.vuejs.org/config/)。
参见 [Configuration Reference](https://cli.vuejs.org/config/)。
**免责声明**
本文档使用AI翻译服务 [Co-op Translator](https://github.com/Azure/co-op-translator) 进行翻译。尽管我们努力确保翻译的准确性,但请注意,自动翻译可能包含错误或不准确之处。原始语言的文档应被视为权威来源。对于重要信息,建议使用专业人工翻译。我们不对因使用此翻译而产生的任何误解或误读承担责任。
---
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**免责声明**
本文件由 AI 翻译服务 [Co-op Translator](https://github.com/Azure/co-op-translator) 翻译完成。尽管我们力求准确,但请注意,自动翻译可能包含错误或不准确之处。原始语言版文件应视为权威来源。对于重要信息,建议使用专业人工翻译。我们对因使用本翻译而产生的任何误解或误释不承担责任。
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
Loading…
Cancel
Save