You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Data-Science-For-Beginners/translations/bn/2-Working-With-Data/07-python/README.md

290 lines
42 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<!--
CO_OP_TRANSLATOR_METADATA:
{
"original_hash": "7bfec050f4717dcc2dfd028aca9d21f3",
"translation_date": "2025-09-06T15:33:03+00:00",
"source_file": "2-Working-With-Data/07-python/README.md",
"language_code": "bn"
}
-->
# ডেটার সাথে কাজ করা: পাইথন এবং প্যান্ডাস লাইব্রেরি
| ![ [(@sketchthedocs)](https://sketchthedocs.dev) এর স্কেচনোট ](../../sketchnotes/07-WorkWithPython.png) |
| :-------------------------------------------------------------------------------------------------------: |
| পাইথনের সাথে কাজ করা - _[@nitya](https://twitter.com/nitya) এর স্কেচনোট_ |
[![পরিচিতি ভিডিও](../../../../translated_images/video-ds-python.245247dc811db8e4d5ac420246de8a118c63fd28f6a56578d08b630ae549f260.bn.png)](https://youtu.be/dZjWOGbsN4Y)
ডেটাবেস ডেটা সংরক্ষণ এবং কুয়েরি করার জন্য খুবই কার্যকর পদ্ধতি প্রদান করে, তবে ডেটা প্রক্রিয়াকরণের সবচেয়ে নমনীয় উপায় হল আপনার নিজের প্রোগ্রাম লিখে ডেটা ম্যানিপুলেট করা। অনেক ক্ষেত্রে, ডেটাবেস কুয়েরি করা আরও কার্যকর হতে পারে। তবে, কিছু ক্ষেত্রে যখন আরও জটিল ডেটা প্রক্রিয়াকরণের প্রয়োজন হয়, তখন এটি সহজে SQL ব্যবহার করে করা সম্ভব হয় না।
ডেটা প্রক্রিয়াকরণ যেকোনো প্রোগ্রামিং ভাষায় করা যেতে পারে, তবে কিছু ভাষা ডেটার সাথে কাজ করার জন্য উচ্চতর স্তরের সুবিধা প্রদান করে। ডেটা বিজ্ঞানীরা সাধারণত নিম্নলিখিত ভাষাগুলোর একটি পছন্দ করেন:
* **[Python](https://www.python.org/)**: এটি একটি সাধারণ উদ্দেশ্য প্রোগ্রামিং ভাষা, যা এর সরলতার কারণে প্রায়শই শিক্ষার্থীদের জন্য সেরা বিকল্প হিসাবে বিবেচিত হয়। পাইথনের অনেক অতিরিক্ত লাইব্রেরি রয়েছে যা আপনাকে অনেক বাস্তব সমস্যার সমাধান করতে সাহায্য করতে পারে, যেমন ZIP আর্কাইভ থেকে ডেটা বের করা বা ছবি গ্রেস্কেলে রূপান্তর করা। ডেটা বিজ্ঞানের পাশাপাশি, পাইথন ওয়েব ডেভেলপমেন্টেও প্রায়শই ব্যবহৃত হয়।
* **[R](https://www.r-project.org/)**: এটি একটি ঐতিহ্যবাহী টুলবক্স যা পরিসংখ্যানগত ডেটা প্রক্রিয়াকরণের জন্য তৈরি। এটি একটি বড় লাইব্রেরি সংগ্রহ (CRAN) ধারণ করে, যা এটিকে ডেটা প্রক্রিয়াকরণের জন্য একটি ভালো পছন্দ করে তোলে। তবে, R একটি সাধারণ উদ্দেশ্য প্রোগ্রামিং ভাষা নয় এবং এটি ডেটা বিজ্ঞানের বাইরে খুব কমই ব্যবহৃত হয়।
* **[Julia](https://julialang.org/)**: এটি ডেটা বিজ্ঞানের জন্য বিশেষভাবে তৈরি একটি ভাষা। এটি পাইথনের চেয়ে ভালো পারফরম্যান্স দেওয়ার জন্য ডিজাইন করা হয়েছে, যা এটিকে বৈজ্ঞানিক পরীক্ষার জন্য একটি চমৎকার টুল করে তোলে।
এই পাঠে, আমরা সহজ ডেটা প্রক্রিয়াকরণের জন্য পাইথন ব্যবহার করার উপর ফোকাস করব। আমরা ভাষার মৌলিক পরিচিতি ধরে নেব। যদি আপনি পাইথন সম্পর্কে আরও গভীরভাবে জানতে চান, তাহলে নিম্নলিখিত রিসোর্সগুলো দেখতে পারেন:
* [Turtle Graphics এবং Fractals দিয়ে মজার উপায়ে পাইথন শিখুন](https://github.com/shwars/pycourse) - পাইথন প্রোগ্রামিংয়ের জন্য একটি গিটহাব-ভিত্তিক দ্রুত পরিচিতি কোর্স
* [পাইথনের সাথে আপনার প্রথম পদক্ষেপ নিন](https://docs.microsoft.com/en-us/learn/paths/python-first-steps/?WT.mc_id=academic-77958-bethanycheum) - [Microsoft Learn](http://learn.microsoft.com/?WT.mc_id=academic-77958-bethanycheum) এ লার্নিং পাথ
ডেটা বিভিন্ন ফর্মে আসতে পারে। এই পাঠে, আমরা তিনটি ফর্মের ডেটা বিবেচনা করব - **টেবুলার ডেটা**, **টেক্সট** এবং **ইমেজ**।
আমরা সমস্ত সম্পর্কিত লাইব্রেরির পূর্ণ পর্যালোচনা দেওয়ার পরিবর্তে কয়েকটি ডেটা প্রক্রিয়াকরণের উদাহরণে ফোকাস করব। এটি আপনাকে কী কী সম্ভব তা বোঝার মূল ধারণা দেবে এবং যখন প্রয়োজন হবে তখন আপনার সমস্যার সমাধান কোথায় খুঁজে পাবেন তা বোঝার সুযোগ দেবে।
> **সবচেয়ে কার্যকর পরামর্শ**: যখন আপনাকে ডেটার উপর একটি নির্দিষ্ট অপারেশন করতে হবে এবং আপনি জানেন না কীভাবে করবেন, তখন ইন্টারনেটে এটি খুঁজে দেখুন। [Stackoverflow](https://stackoverflow.com/) প্রায়শই অনেক সাধারণ কাজের জন্য পাইথনে দরকারী কোড নমুনা সরবরাহ করে।
## [পাঠ-পূর্ব কুইজ](https://ff-quizzes.netlify.app/en/ds/quiz/12)
## টেবুলার ডেটা এবং ডেটাফ্রেম
আপনি ইতিমধ্যে টেবুলার ডেটার সাথে পরিচিত হয়েছেন যখন আমরা রিলেশনাল ডেটাবেস নিয়ে আলোচনা করেছি। যখন আপনার কাছে অনেক ডেটা থাকে এবং এটি বিভিন্ন সংযুক্ত টেবিলে থাকে, তখন এটি পরিচালনার জন্য SQL ব্যবহার করা অবশ্যই যৌক্তিক। তবে, অনেক ক্ষেত্রে আমাদের একটি ডেটার টেবিল থাকে এবং আমরা এই ডেটা সম্পর্কে কিছু **বোঝাপড়া** বা **অন্তর্দৃষ্টি** পেতে চাই, যেমন ডিস্ট্রিবিউশন, মানগুলোর মধ্যে সম্পর্ক ইত্যাদি। ডেটা বিজ্ঞানে, অনেক সময় আমাদের মূল ডেটার কিছু রূপান্তর করতে হয়, তারপর ভিজ্যুয়ালাইজেশন করতে হয়। এই দুটি ধাপই পাইথন ব্যবহার করে সহজেই করা যায়।
পাইথনে টেবুলার ডেটার সাথে কাজ করার জন্য দুটি সবচেয়ে দরকারী লাইব্রেরি হল:
* **[Pandas](https://pandas.pydata.org/)**: এটি আপনাকে **ডেটাফ্রেম** ম্যানিপুলেট করতে দেয়, যা রিলেশনাল টেবিলের অনুরূপ। আপনি নামকৃত কলাম পেতে পারেন এবং সারি, কলাম এবং ডেটাফ্রেমের উপর বিভিন্ন অপারেশন করতে পারেন।
* **[Numpy](https://numpy.org/)**: এটি **টেনসর**, অর্থাৎ বহু-মাত্রিক **অ্যারে** নিয়ে কাজ করার জন্য একটি লাইব্রেরি। অ্যারেতে একই ধরনের মান থাকে এবং এটি ডেটাফ্রেমের চেয়ে সহজ, তবে এটি আরও গাণিতিক অপারেশন প্রদান করে এবং কম ওভারহেড তৈরি করে।
এছাড়াও, আরও কিছু লাইব্রেরি রয়েছে যা আপনার জানা উচিত:
* **[Matplotlib](https://matplotlib.org/)**: এটি ডেটা ভিজ্যুয়ালাইজেশন এবং গ্রাফ আঁকার জন্য ব্যবহৃত একটি লাইব্রেরি
* **[SciPy](https://www.scipy.org/)**: এটি কিছু অতিরিক্ত বৈজ্ঞানিক ফাংশন সহ একটি লাইব্রেরি। আমরা ইতিমধ্যে এই লাইব্রেরির সাথে পরিচিত হয়েছি যখন আমরা সম্ভাবনা এবং পরিসংখ্যান নিয়ে আলোচনা করেছি
এখানে একটি কোডের অংশ রয়েছে যা আপনি সাধারণত আপনার পাইথন প্রোগ্রামের শুরুতে এই লাইব্রেরিগুলো ইমপোর্ট করতে ব্যবহার করবেন:
```python
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from scipy import ... # you need to specify exact sub-packages that you need
```
Pandas কয়েকটি ি রণ উপর িি কর করে।
### সিরিজ (Series)
**িি** হল নগ একটি রম, একটি ি numpy মতো। রধ থক হল িি একটি **ইনড** , এব যখন আমর িি উপর অপশন করি (মন, করি), তখন ইনডসটি িচন ওয়া হয়। ইনডসটি একটি রণ ণস ি নমবর হত (যখন ি িি ি কর হয, এটি িফল ইনড), অথব এটি একটি জটি , মন ি সময হত ে।
> ****: সহগ টব [`notebook.ipynb`](notebook.ipynb)- ি থমি Pandas রয়েে। আমর এখ ি উদহরণ উল করি, এব আপনি অবশযই টবকটি খত
উদহরণসবর, আমর আম আইসকি িরয িষণ করত চল একটি িি সময়ে জন িরয়ে (রতিি িি হওয়া আইট ) ি করি:
```python
start_date = "Jan 1, 2020"
end_date = "Mar 31, 2020"
idx = pd.date_range(start_date,end_date)
print(f"Length of index is {len(idx)}")
items_sold = pd.Series(np.random.randint(25,50,size=len(idx)),index=idx)
items_sold.plot()
```
![ইম িি লট](../../../../translated_images/timeseries-1.80de678ab1cf727e50e00bcf24009fa2b0a8b90ebc43e34b99a345227d28e467.bn.png)
এখন ধর রতি সপ আমর বন জন একটি ি আয়োজন করি এব ি জন অতিি ১০ আইসকি ি আমর এটি জন সপ অন়ী ইনড কর আরকটি িি ি করত ি:
```python
additional_items = pd.Series(10,index=pd.date_range(start_date,end_date,freq="W"))
```
যখন আমর ি িি করি, তখন আমর :
```python
total_items = items_sold.add(additional_items,fill_value=0)
total_items.plot()
```
![ইম িি লট](../../../../translated_images/timeseries-2.aae51d575c55181ceda81ade8c546a2fc2024f9136934386d57b8a189d7570ff.bn.png)
> **** আমর রণ িনট `total_items+additional_items` যবহ করছি া। যদি করত, হল আমর অন `NaN` (*Not a Number*) এর রণ হল `additional_items` িি ি ইনড পয়ে অনপসি, এব `NaN`-এর ি করল ফলফল `NaN` হয়। কর সময আম `fill_value` ি িি করত হয়।
ইম িি , আমর িি সময়ে যবধ িি **নম** করত ি। উদহরণসবর, ধর আমর ি গড িরয পরি গণন করত আমর িনলিি যবহ করত ি:
```python
monthly = total_items.resample("1M").mean()
ax = monthly.plot(kind='bar')
```
![ি ইম িি গড](../../../../translated_images/timeseries-3.f3147cbc8c624881008564bc0b5d9fcc15e7374d339da91766bd0e1c6bd9e3af.bn.png)
### ডেটাফ্রেম (DataFrame)
লত একই ইনড সহ িি একটি রহ আমর একি িি একতি কর একটি ি করত ি:
```python
a = pd.Series(range(1,10))
b = pd.Series(["I","like","to","play","games","and","will","not","change"],index=range(0,9))
df = pd.DataFrame([a,b])
```
এটি একটি অনি ি ি করব:
| | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| --- | --- | ---- | --- | --- | ------ | --- | ------ | ---- | ---- |
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
| 1 | I | like | to | use | Python | and | Pandas | very | much |
আমর িিজগ কল ি যবহ করত ি এব িকশনি যবহ কর কল িি করত ি:
```python
df = pd.DataFrame({ 'A' : a, 'B' : b })
```
এটি আম একটি ি :
| | A | B |
| --- | --- | ------ |
| 0 | 1 | I |
| 1 | 2 | like |
| 2 | 3 | to |
| 3 | 4 | use |
| 4 | 5 | Python |
| 5 | 6 | and |
| 6 | 7 | Pandas |
| 7 | 8 | very |
| 8 | 9 | much |
**** আমর আগ িলটি সপ কর এই ি আউটও ি, মন ি:
```python
df = pd.DataFrame([a,b]).T..rename(columns={ 0 : 'A', 1 : 'B' })
```
এখ `.T` সপ কর অপশন ি কর, অর ি এব কল পরিবরতন কর, এব `rename` অপশন আম কলমগ পরিবরতন করত এটি আগ উদহরণ ে।
আমর কয়েকটি বপ অপশন করত ি হল:
**কল িচন** আমর `df['A']` ি থক কল িচন করত ি - এই অপশন একটি িি রদ করে। আমর `df[['B','A']]` ি কল একটি বস অন িচন করত ি - এটি আরকটি রদ করে।
**িি ইটি়া উপর িি কর ি ি কর** উদহরণসবর, ি খত কল `A` -এর ়ে বড, আমর িখত ি `df[df['A']>5]`।
> ****: িিং কর হল িনর `df['A']<5` একসপশন একটি ি়া িি রদ কর, ি কর িি `df['A']`-এর রতিি উপ জন একসপশনটি `True` `False`। যখন ি়া িিজটি ইনড ি যবহ কর হয, এটি ি একটি বস রদ করে। ইথন ি়া একসপশন যবহ কর সমভব নয, উদহরণসবর, `df[df['A']>5 and df['A']<7]` হবে। পরিবর, আপন ি়া িি ি `&` অপশন যবহ করত হব, মন িখত হব `df[(df['A']>5) & (df['A']<7)]` (*এখ বনধন বপ*)
**নত গণন কল ি কর** আমর সহজ আম জন নত গণন কল ি করত ি, মন:
```python
df['DivA'] = df['A']-df['A'].mean()
```
এই উদহরণটি A-এর গড িি গণন করে। এখ ঘট হল আমর একটি িি গণন করছি এব রপর এই িিজটি ি ইন করছি, একটি নত কল ি করছি। , আমর এমন অপশন যবহ করত ি িি মঞজসযপ নয, উদহরণসবর, ি ডটি :
```python
# Wrong code -> df['ADescr'] = "Low" if df['A'] < 5 else "Hi"
df['LenB'] = len(df['B']) # <- Wrong result
```
উদহরণটি, যদি িনটসগতভ সঠি, আম ফলফল , রণ এটি িি `B`-এর কল সমস ইন কর, এব আমর ়েি নয়।
যদি আম এই ধরন জটি একসপশন গণন করত হয, তব আমর `apply` াংশন যবহ করত ি। উদহরণটি িনর :
```python
df['LenB'] = df['B'].apply(lambda x : len(x))
# or
df['LenB'] = df['B'].apply(len)
```
উপর অপশনগ পর, আমর িনলিি :
| | A | B | DivA | LenB |
| --- | --- | ------ | ---- | ---- |
| 0 | 1 | I | -4.0 | 1 |
| 1 | 2 | like | -3.0 | 4 |
| 2 | 3 | to | -2.0 | 2 |
| 3 | 4 | use | -1.0 | 3 |
| 4 | 5 | Python | 0.0 | 6 |
| 5 | 6 | and | 1.0 | 3 |
| 6 | 7 | Pandas | 2.0 | 6 |
| 7 | 8 | very | 3.0 | 4 |
| 8 | 9 | much | 4.0 | 4 |
** উপর িি কর ি িচন** `iloc` কনসট যবহ কর কর ে। উদহরণসবর, রথম ি ি িচন করত:
```python
df.iloc[:5]
```
**িং** শই এক *িভট ি* এর মত ফলফল যবহ হয়। ধর আমর `LenB`-এর রতিি িি জন কল `A`-এর গড গণন করত তখন আমর আম মক `LenB` করত ি এব `mean` কল করত ি:
```python
df.groupby(by='LenB')[['A','DivA']].mean()
```
যদি আম গড এব উপ গণন করত হয, তব আমর আরও জটি `aggregate` াংশন যবহ করত ি:
```python
df.groupby(by='LenB') \
.aggregate({ 'DivA' : len, 'A' : lambda x: x.mean() }) \
.rename(columns={ 'DivA' : 'Count', 'A' : 'Mean'})
```
এটি আম িনলিি ি :
| LenB | Count | Mean |
| ---- | ----- | -------- |
| 1 | 1 | 1.000000 |
| 2 | 1 | 3.000000 |
| 3 | 2 | 5.000000 |
| 4 | 3 | 6.333333 |
| 6 | 2 | 6.000000 |
### ডেটা সংগ্রহ করা
আমর ি Python অবজ সহজ Series এব DataFrames ি কর তব, রণত সট ইল Excel ি আক আসে। যকরম, Pandas আম ি কর একটি সহজ উপ রদ করে। উদহরণসবর, CSV ইল পড় এতট সহজ:
```python
df = pd.read_csv('file.csv')
```
আমরা "Challenge" সেকশনে আরও উদাহরণ দেখব, যেখানে বাইরের ওয়েবসাইট থেকে ডেটা আনার বিষয়টি অন্তর্ভুক্ত থাকবে।
### প্রিন্টিং এবং প্লটিং
একজন Data Scientist প্রায়ই ডেটা অন্বেষণ করতে হয়, তাই এটি ভিজ্যুয়ালাইজ করার ক্ষমতা থাকা গুরুত্বপূর্ণ। যখন DataFrame বড় হয়, তখন অনেক সময় আমরা নিশ্চিত হতে চাই যে আমরা সবকিছু সঠিকভাবে করছি, এবং এর জন্য প্রথম কয়েকটি সারি প্রিন্ট করা দরকার। এটি `df.head()` কল করে করা যায়। যদি আপনি Jupyter Notebook থেকে এটি চালান, এটি DataFrame-কে সুন্দর টেবিল আকারে প্রিন্ট করবে।
আমরা `plot` ফাংশনের ব্যবহারও দেখেছি কিছু কলাম ভিজ্যুয়ালাইজ করার জন্য। যদিও `plot` অনেক কাজের জন্য খুবই উপযোগী এবং `kind=` প্যারামিটারের মাধ্যমে বিভিন্ন গ্রাফ টাইপ সমর্থন করে, আপনি সবসময় কাঁচা `matplotlib` লাইব্রেরি ব্যবহার করে আরও জটিল কিছু প্লট করতে পারেন। আমরা আলাদা কোর্স লেসনে ডেটা ভিজ্যুয়ালাইজেশন বিস্তারিতভাবে আলোচনা করব।
এই ওভারভিউ Pandas-এর সবচেয়ে গুরুত্বপূর্ণ ধারণাগুলো কভার করে, তবে লাইব্রেরিটি খুবই সমৃদ্ধ এবং এর মাধ্যমে আপনি অসীম কাজ করতে পারেন! এখন চলুন এই জ্ঞান ব্যবহার করে একটি নির্দিষ্ট সমস্যার সমাধান করি।
## 🚀 চ্যালেঞ্জ ১: COVID ছড়ানোর বিশ্লেষণ
প্রথম সমস্যাটি আমরা ফোকাস করব COVID-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)-এ উপলব্ধ।
যেহেতু আমরা ডেটা নিয়ে কাজ করার পদ্ধতি প্রদর্শন করতে চাই, আমরা আপনাকে [`notebook-covidspread.ipynb`](notebook-covidspread.ipynb) খুলে শুরু থেকে শেষ পর্যন্ত পড়ার আমন্ত্রণ জানাই। আপনি সেলগুলো চালাতে পারেন এবং শেষে আমাদের দেওয়া কিছু চ্যালেঞ্জ সম্পন্ন করতে পারেন।
![COVID ছড়ানো](../../../../translated_images/covidspread.f3d131c4f1d260ab0344d79bac0abe7924598dd754859b165955772e1bd5e8a2.bn.png)
> যদি আপনি Jupyter Notebook-এ কোড চালানোর পদ্ধতি না জানেন, [এই আর্টিকেলটি](https://soshnikov.com/education/how-to-execute-notebooks-from-github/) দেখুন।
## অসংগঠিত ডেটার সাথে কাজ করা
যদিও ডেটা প্রায়ই টেবুলার আকারে আসে, কিছু ক্ষেত্রে আমাদের কম সংগঠিত ডেটার সাথে কাজ করতে হয়, যেমন টেক্সট বা ছবি। এই ক্ষেত্রে, উপরে দেখা ডেটা প্রসেসিং কৌশল প্রয়োগ করতে, আমাদের **সংগঠিত** ডেটা বের করতে হয়। এখানে কিছু উদাহরণ দেওয়া হলো:
* টেক্সট থেকে কীওয়ার্ড বের করা এবং কীভাবে সেগুলো কতবার উপস্থিত হয় তা দেখা
* ছবিতে অবজেক্ট সম্পর্কে তথ্য বের করতে নিউরাল নেটওয়ার্ক ব্যবহার করা
* ভিডিও ক্যামেরা ফিডে মানুষের আবেগ সম্পর্কে তথ্য পাওয়া
## 🚀 চ্যালেঞ্জ ২: COVID পেপার বিশ্লেষণ
এই চ্যালেঞ্জে, আমরা COVID মহামারীর বিষয়টি নিয়ে আলোচনা চালিয়ে যাব এবং এই বিষয়ে বৈজ্ঞানিক পেপার প্রসেসিংয়ে ফোকাস করব। [CORD-19 Dataset](https://www.kaggle.com/allen-institute-for-ai/CORD-19-research-challenge)-এ -এর বেশি (লেখার সময়) COVID সম্পর্কিত পেপার রয়েছে, যা মেটাডেটা এবং অ্যাবস্ট্রাক্টসহ উপলব্ধ (এবং এর মধ্যে প্রায় অর্ধেকের জন্য পূর্ণ টেক্সটও সরবরাহ করা হয়েছে)।
এই ডেটাসেট বিশ্লেষণের একটি পূর্ণ উদাহরণ [Text Analytics for Health](https://docs.microsoft.com/azure/cognitive-services/text-analytics/how-tos/text-analytics-for-health/?WT.mc_id=academic-77958-bethanycheum) কগনিটিভ সার্ভিস ব্যবহার করে [এই ব্লগ পোস্টে](https://soshnikov.com/science/analyzing-medical-papers-with-azure-and-text-analytics-for-health/) বর্ণনা করা হয়েছে। আমরা এই বিশ্লেষণের সরলীকৃত সংস্করণ আলোচনা করব।
> **NOTE**: আমরা এই রিপোজিটরির অংশ হিসেবে ডেটাসেটের একটি কপি সরবরাহ করি না। প্রথমে আপনাকে [এই ডেটাসেটের Kaggle](https://www.kaggle.com/allen-institute-for-ai/CORD-19-research-challenge?select=metadata.csv) থেকে [`metadata.csv`](https://www.kaggle.com/allen-institute-for-ai/CORD-19-research-challenge?select=metadata.csv) ফাইলটি ডাউনলোড করতে হতে পারে। Kaggle-এ রেজিস্ট্রেশন প্রয়োজন হতে পারে। আপনি রেজিস্ট্রেশন ছাড়াও [এখান থেকে](https://ai2-semanticscholar-cord-19.s3-us-west-2.amazonaws.com/historical_releases.html) ডেটাসেট ডাউনলোড করতে পারেন, তবে এটি মেটাডেটা ফাইলের পাশাপাশি সমস্ত পূর্ণ টেক্সট অন্তর্ভুক্ত করবে।
[`notebook-papers.ipynb`](notebook-papers.ipynb) খুলুন এবং শুরু থেকে শেষ পর্যন্ত পড়ুন। আপনি সেলগুলো চালাতে পারেন এবং শেষে আমাদের দেওয়া কিছু চ্যালেঞ্জ সম্পন্ন করতে পারেন।
![Covid মেডিকেল ট্রিটমেন্ট](../../../../translated_images/covidtreat.b2ba59f57ca45fbcda36e0ddca3f8cfdddeeed6ca879ea7f866d93fa6ec65791.bn.png)
## ইমেজ ডেটা প্রসেসিং
সম্প্রতি, খুব শক্তিশালী AI মডেল তৈরি করা হয়েছে যা আমাদের ছবি বুঝতে সাহায্য করে। অনেক কাজ প্রি-ট্রেইনড নিউরাল নেটওয়ার্ক বা ক্লাউড সার্ভিস ব্যবহার করে সমাধান করা যায়। কিছু উদাহরণ হলো:
* **ইমেজ ক্লাসিফিকেশন**, যা আপনাকে ছবিকে পূর্বনির্ধারিত ক্লাসগুলোর মধ্যে একটিতে শ্রেণীবদ্ধ করতে সাহায্য করে। আপনি সহজেই [Custom Vision](https://azure.microsoft.com/services/cognitive-services/custom-vision-service/?WT.mc_id=academic-77958-bethanycheum) সার্ভিস ব্যবহার করে নিজের ইমেজ ক্লাসিফায়ার ট্রেইন করতে পারেন।
* **অবজেক্ট ডিটেকশন** ছবিতে বিভিন্ন অবজেক্ট সনাক্ত করতে। [Computer Vision](https://azure.microsoft.com/services/cognitive-services/computer-vision/?WT.mc_id=academic-77958-bethanycheum) সার্ভিস অনেক সাধারণ অবজেক্ট সনাক্ত করতে পারে, এবং আপনি [Custom Vision](https://azure.microsoft.com/services/cognitive-services/custom-vision-service/?WT.mc_id=academic-77958-bethanycheum) মডেল ট্রেইন করে নির্দিষ্ট আগ্রহের অবজেক্ট সনাক্ত করতে পারেন।
* **ফেস ডিটেকশন**, যার মধ্যে বয়স, লিঙ্গ এবং আবেগ সনাক্তকরণ অন্তর্ভুক্ত। এটি [Face API](https://azure.microsoft.com/services/cognitive-services/face/?WT.mc_id=academic-77958-bethanycheum) ব্যবহার করে করা যায়।
এই সমস্ত ক্লাউড সার্ভিস [Python SDKs](https://docs.microsoft.com/samples/azure-samples/cognitive-services-python-sdk-samples/cognitive-services-python-sdk-samples/?WT.mc_id=academic-77958-bethanycheum) ব্যবহার করে কল করা যায় এবং সহজেই আপনার ডেটা এক্সপ্লোরেশন ওয়ার্কফ্লোতে অন্তর্ভুক্ত করা যায়।
এখানে ইমেজ ডেটা সোর্স থেকে ডেটা এক্সপ্লোর করার কিছু উদাহরণ দেওয়া হলো:
* ব্লগ পোস্ট [কোডিং ছাড়াই ডেটা সায়েন্স শেখার উপায়](https://soshnikov.com/azure/how-to-learn-data-science-without-coding/) এ আমরা Instagram ছবিগুলো এক্সপ্লোর করি, চেষ্টা করি বুঝতে কীভাবে একটি ছবিতে বেশি লাইক পাওয়া যায়। আমরা প্রথমে [Computer Vision](https://azure.microsoft.com/services/cognitive-services/computer-vision/?WT.mc_id=academic-77958-bethanycheum) ব্যবহার করে ছবিগুলো থেকে যতটা সম্ভব তথ্য বের করি এবং তারপর [Azure Machine Learning AutoML](https://docs.microsoft.com/azure/machine-learning/concept-automated-ml/?WT.mc_id=academic-77958-bethanycheum) ব্যবহার করে একটি ব্যাখ্যাযোগ্য মডেল তৈরি করি।
* [Facial Studies Workshop](https://github.com/CloudAdvocacy/FaceStudies)-এ আমরা [Face API](https://azure.microsoft.com/services/cognitive-services/face/?WT.mc_id=academic-77958-bethanycheum) ব্যবহার করে ইভেন্টের ছবিতে মানুষের আবেগ বের করি, চেষ্টা করি বুঝতে কীভাবে মানুষকে খুশি করা যায়।
## উপসংহার
আপনার কাছে সংগঠিত বা অসংগঠিত ডেটা যাই থাকুক না কেন, Python ব্যবহার করে আপনি ডেটা প্রসেসিং এবং বোঝার সাথে সম্পর্কিত সমস্ত ধাপ সম্পন্ন করতে পারেন। এটি সম্ভবত ডেটা প্রসেসিংয়ের সবচেয়ে নমনীয় উপায় এবং এ কারণেই বেশিরভাগ ডেটা সায়েন্টিস্ট Python-কে তাদের প্রধান টুল হিসেবে ব্যবহার করেন। যদি আপনি ডেটা সায়েন্সে সিরিয়াস হন, Python গভীরভাবে শেখা সম্ভবত একটি ভালো ধারণা!
## [পোস্ট-লেকচার কুইজ](https://ff-quizzes.netlify.app/en/ds/quiz/13)
## রিভিউ এবং স্ব-অধ্যয়ন
**বই**
* [Wes McKinney. Python for Data Analysis: Data Wrangling with Pandas, NumPy, and IPython](https://www.amazon.com/gp/product/1491957662)
**অনলাইন রিসোর্স**
* অফিসিয়াল [10 মিনিটে Pandas](https://pandas.pydata.org/pandas-docs/stable/user_guide/10min.html) টিউটোরিয়াল
* [Pandas Visualization](https://pandas.pydata.org/pandas-docs/stable/user_guide/visualization.html) সম্পর্কিত ডকুমেন্টেশন
**Python শেখা**
* [Turtle Graphics এবং Fractals দিয়ে Python মজার উপায়ে শেখা](https://github.com/shwars/pycourse)
* [Python-এ আপনার প্রথম পদক্ষেপ নিন](https://docs.microsoft.com/learn/paths/python-first-steps/?WT.mc_id=academic-77958-bethanycheum) [Microsoft Learn](http://learn.microsoft.com/?WT.mc_id=academic-77958-bethanycheum)-এ লার্নিং পাথ
## অ্যাসাইনমেন্ট
[উপরের চ্যালেঞ্জগুলোর জন্য আরও বিস্তারিত ডেটা স্টাডি সম্পন্ন করুন](assignment.md)
## ক্রেডিট
এই লেসনটি ♥️ দিয়ে [Dmitry Soshnikov](http://soshnikov.com) দ্বারা রচিত।
---
**অস্বীকৃতি**:
এই নথিটি AI অনুবাদ পরিষেবা [Co-op Translator](https://github.com/Azure/co-op-translator) ব্যবহার করে অনুবাদ করা হয়েছে। আমরা যথাসম্ভব সঠিকতার জন্য চেষ্টা করি, তবে অনুগ্রহ করে মনে রাখবেন যে স্বয়ংক্রিয় অনুবাদে ত্রুটি বা অসঙ্গতি থাকতে পারে। মূল ভাষায় থাকা নথিটিকে প্রামাণিক উৎস হিসেবে বিবেচনা করা উচিত। গুরুত্বপূর্ণ তথ্যের জন্য, পেশাদার মানব অনুবাদ সুপারিশ করা হয়। এই অনুবাদ ব্যবহারের ফলে কোনো ভুল বোঝাবুঝি বা ভুল ব্যাখ্যা হলে আমরা তার জন্য দায়ী থাকব না।