آموزش بارگیری داده ها برای پروژه های یادگیری ماشین
آموزش بارگیری داده ها برای پروژه های یادگیری ماشین
در این درس از مجموعه آموزش برنامه نویسی سایت سورس باران، به آموزش بارگیری داده ها برای پروژه های یادگیری ماشین خواهیم پرداخت.
پیشنهاد ویژه : آموزش طراحی وب سایت با پایتون
فرض کنید اگر می خواهید یک پروژه یادگیری ماشین را شروع کنید، اولین و مهمترین چیزی که شما نیاز دارید چیست؟ این داده هایی است که برای شروع هر پروژه یادگیری ماشین باید بارگیری کنیم. با توجه به داده ها، رایج ترین قالب داده ها برای پروژه های یادگیری ماشین CSV (مقادیر جدا شده با کاما) است.
اساساً ، CSV یک قالب فایل ساده است که برای ذخیره داده های جدول (تعداد و متن) مانند صفحه گسترده در متن ساده استفاده می شود. در پایتون ، ما می توانیم داده های CSV را با روش های مختلف بارگیری کنیم اما قبل از بارگذاری داده های CSV ، باید مراقب برخی از ملاحظات باشیم.
در هنگام بارگیری داده های CSV توجه کنید
قالب داده های CSV رایج ترین قالب برای داده های ML است ، اما ما باید در مورد بارگیری موارد مشابه در پروژه های ML خود ، نکات مهم را رعایت کنیم –
فایل هدر
در پرونده های داده CSV ، سرصفحه حاوی اطلاعات مربوط به هر زمینه است. ما باید از همان جداکننده برای فایل هدر و فایل داده استفاده کنیم زیرا این فایل هدر است که مشخص می کند چگونه باید زمینه های داده را تفسیر کرد.
موارد زیر دو مورد مربوط به هدر پرونده CSV است که باید مورد بررسی قرار گیرند –
- Case-I: هنگامی که فایل داده دارای یک فایل هدر است – اگر پرونده داده دارای یک عنوان فایل باشد، به طور خودکار اسامی را به هر ستون داده اختصاص می دهد.
- Case-II: هنگامی که فایل داده دارای فایل هدر نیست – اگر پرونده داده دارای عنوان فایل نیست ، باید اسامی را به صورت دستی به هر ستون داده اختصاص دهیم.
در هر دو مورد ، ما باید صراحتاً شرایط آب و هوایی فایل CSV خود را مشخص کنیم یا نه.
نظرات
نظرات در هر فایل داده ای اهمیت خود را دارند. در پرونده داده CSV ، نظرات با یک هش (#) در ابتدای خط نشان داده می شوند. هنگام بارگذاری داده های CSV در پروژه های ML ، باید نظرات را در نظر بگیریم زیرا اگر در پرونده نظراتی داریم ، ممکن است لازم باشد که مشخص کنیم ، به روشی که برای بارگذاری انتخاب می کنیم بستگی دارد ، اینکه آیا انتظار آن نظرات را داریم یا خیر.
حائل، جداکننده
در فایل های داده CSV، کاراکتر کاما (،) جداکننده استاندارد است. نقش جدا کننده جدا کردن مقادیر در زمینه ها است. مهم است که هنگام بارگذاری پرونده CSV در پروژه های ML ، نقش جداکننده را در نظر بگیرید زیرا ما همچنین می توانیم از جداکننده دیگری مانند برگه یا فضای سفید استفاده کنیم. اما در مورد استفاده از جداکننده متفاوت از استاندارد ، باید آن را صریحاً مشخص کنیم.
نقل قول ها
در پرونده های داده CSV ، علامت نقل قول دو گانه (“”) کاراکتر پیش فرض نقل قول است. در نظر گرفتن نقش نقل قول ها هنگام بارگذاری پرونده CSV در پروژه های ML مهم است زیرا ما می توانیم از شخصیت های نقل قول دیگری غیر از علامت نقل قول دوگانه استفاده کنیم اما در صورت استفاده از یک کاراکتر نقل قول متفاوت از شخصیت استاندارد، باید آن را صریحاً مشخص کنیم.
روش های بارگیری فایل CSV داده ها
در حالی که با پروژه های ML کار می کنید ، مهمترین کار بارگیری داده ها به طور صحیح در آنها است. رایج ترین قالب داده برای پروژه های ML CSV است و در تجزیه و تحلیل طعم های مختلف و مشکلات مختلفی وجود دارد. در این بخش ، ما در مورد سه روش رایج در پایتون برای بارگذاری پرونده داده CSV بحث خواهیم کرد –
بارگیری CSV با کتابخانه استاندارد پایتون بارگیری
اولین و پرکاربردترین روش برای بارگذاری پرونده داده CSV استفاده از کتابخانه استاندارد پایتون است که انواع مختلفی از ماژول های داخلی یعنی ماژول CSV و تابع ()Reader را در اختیار ما قرار می دهد. در زیر مثالی از بارگذاری فایل داده CSV با کمک آن آورده شده است –
مثال
در این مثال ما از مجموعه داده های گل عنبیه استفاده می کنیم که می تواند در فهرست محلی ما بارگیری شود. پس از بارگذاری فایل داده، می توانیم آن را به آرایه NumPy تبدیل کرده و از آن برای پروژه های ML استفاده کنیم. در زیر اسکریپت پایتون برای بارگذاری پرونده داده CSV آورده شده است –
ابتدا باید ماژول csv ارائه شده توسط کتابخانه استاندارد پایتون را به شرح زیر وارد کنیم –
1 |
import csv |
بعد ، ما باید ماژول Numpy را برای تبدیل داده های بارگذاری شده به آرایه NumPy وارد کنیم.
1 |
import numpy as np |
اکنون با داشتن فایل داده CSV ، مسیر کامل پرونده را که در فهرست محلی ما ذخیره شده است ، فراهم کنید –
1 |
path = r"c:\iris.csv" |
بعد ، از تابع ()csv.reader برای خواندن داده ها از فایل CSV استفاده کنید –
1 2 3 4 5 |
with open(path,'r') as f: reader = csv.reader(f,delimiter = ',') headers = next(reader) data = list(reader) data = np.array(data).astype(float) |
ما می توانیم نام عناوین را با خط زیر خط چاپ کنیم –
1 |
print(headers) |
خط اسکریپت زیر شکل داده ها را چاپ می کند ، به عنوان مثال تعداد ردیف ها و ستون ها در پرونده –
1 |
print(data.shape) |
خط اسکریپت بعدی سه خط اول فایل داده را می دهد –
1 |
print(data[:3]) |
خروجی
1 2 3 4 5 6 |
['sepal_length', 'sepal_width', 'petal_length', 'petal_width'] (150, 4) [ [5.1 3.5 1.4 0.2] [4.9 3. 1.4 0.2] [4.7 3.2 1.3 0.2] ] |
بارگیری CSV با NumPy
روش دیگر برای بارگذاری فایل داده CSV عملکرد NumPy و numpy.loadtxt () است. در زیر مثالی از بارگذاری فایل داده CSV با کمک آن آمده است –
مثال
در این مثال، ما از داده های Pima Indians با داده های بیماران دیابتی استفاده می کنیم. این مجموعه داده یک مجموعه داده عددی است و هیچ عنوان وجود ندارد. همچنین می تواند در فهرست محلی ما بارگیری شود. پس از بارگذاری فایل داده، می توانیم آن را به آرایه NumPy تبدیل کرده و از آن برای پروژه های ML استفاده کنیم. در زیر اسکریپت پایتون برای بارگذاری پرونده داده CSV آورده شده است –
1 2 3 4 5 6 |
from numpy import loadtxt path = r"C:\pima-indians-diabetes.csv" datapath= open(path, 'r') data = loadtxt(datapath, delimiter=",") print(data.shape) print(data[:3]) |
خروجی
1 2 3 4 5 |
(768, 9) [ [ 6. 148. 72. 35. 0. 33.6 0.627 50. 1.] [ 1. 85. 66. 29. 0. 26.6 0.351 31. 0.] [ 8. 183. 64. 0. 0. 23.3 0.672 32. 1.] ] |
بارگیری CSV با Pandas
روش دیگر برای بارگذاری پرونده داده CSV توسط تابع Pandas و ()pandas.read_csv است. این تابع بسیار انعطاف پذیر است که یک pandas.DataFrame را برمی گرداند که می تواند بلافاصله برای طراحی نقشه استفاده شود. در زیر مثالی از بارگذاری پرونده داده CSV با کمک آن آمده است –
مثال
در اینجا، ما دو اسکریپت پایتون را پیاده سازی خواهیم کرد، اول اینکه مجموعه داده های Iris دارای هدر باشد و دیگری با استفاده از مجموعه داده های Pima Indians که یک مجموعه داده عددی است و هیچ سربرگ ندارد. هر دو مجموعه داده را می توان در فهرست محلی بارگیری کرد.
اسکریپت 1
در زیر اسکریپت پایتون برای بارگذاری فایل داده CSV با استفاده از Pandas در مجموعه داده های Iris آورده شده است –
1 2 3 4 5 6 7 8 9 10 11 12 13 |
from pandas import read_csv path = r"C:\iris.csv" data = read_csv(path) print(data.shape) print(data[:3]) Output: (150, 4) sepal_length sepal_width petal_length petal_width 0 5.1 3.5 1.4 0.2 1 4.9 3.0 1.4 0.2 2 4.7 3.2 1.3 0.2 |
اسکریپت 2
در زیر اسکریپت پایتون برای بارگذاری فایل داده CSV همراه با ارائه نام عناوین نیز با استفاده از Pandas در مجموعه داده های دیابت Pima Indians –
1 2 3 4 5 6 |
from pandas import read_csv path = r"C:\pima-indians-diabetes.csv" headernames = ['preg', 'plas', 'pres', 'skin', 'test', 'mass', 'pedi', 'age', 'class'] data = read_csv(path, names=headernames) print(data.shape) print(data[:3]) |
خروجی
1 2 3 4 5 |
(768, 9) preg plas pres skin test mass pedi age class 0 6 148 72 35 0 33.6 0.627 50 1 1 1 85 66 29 0 26.6 0.351 31 0 2 8 183 64 0 0 23.3 0.672 32 1 |
تفاوت بین سه روش فوق استفاده شده برای بارگذاری فایل داده CSV را می توان به راحتی با کمک مثالهای ارائه شده درک کرد.
دیدگاه شما