دروس بايثون

بايثون هوم مقدمة بايثون ابدأ بايثون بناء جملة بايثون تعليقات بايثون متغيرات بايثون أنواع بيانات بايثون أرقام بايثون صب بايثون سلاسل بايثون بايثون منطقية مشغلي بايثون قوائم بايثون Python Tuples مجموعات بايثون قواميس بايثون بيثون إذا ... آخر بايثون أثناء التكرار بايثون للحلقات وظائف بايثون بيثون لامدا صفائف بايثون فئات / كائنات بايثون وراثة بايثون تكرارات بايثون نطاق بايثون وحدات بايثون تواريخ بايثون الرياضيات بايثون Python JSON لغة Python RegEx Python PIP بايثون جرب ... ماعدا مدخلات مستخدم بايثون تنسيق سلسلة Python

التعامل مع الملف

التعامل مع ملف بايثون ملفات قراءة بايثون Python كتابة / إنشاء ملفات بايثون حذف الملفات

وحدات بايثون

برنامج NumPy التعليمي تجول الباندا البرنامج التعليمي Scipy

بيثون ماتبلوتليب

مقدمة ماتبلوتليب ابدأ Matplotlib Matplotlib Pyplot ماتبلوتليب بالتآمر علامات Matplotlib خط ماتبلوتليب تسميات Matplotlib شبكة Matplotlib المؤامرات الفرعية Matplotlib مبعثر Matplotlib قضبان ماتبلوتليب الرسوم البيانية Matplotlib المخططات الدائرية Matplotlib

التعلم الالي

ابدء يعني وضع متوسط الانحراف المعياري النسبة المئوية توزيع البيانات توزيع البيانات العادي مؤامرة مبعثر الانحدارالخطي الانحدار متعدد الحدود الانحدار المتعدد حجم تدريب / اختبار شجرة القرار

Python MySQL

ابدأ MySQL MySQL إنشاء قاعدة بيانات إنشاء جدول MySQL إدراج MySQL حدد MySQL MySQL أين ترتيب MySQL حسب حذف MySQL جدول إسقاط MySQL تحديث MySQL حد MySQL انضم إلى MySQL

Python MongoDB

ابدأ MongoDB MongoDB إنشاء قاعدة بيانات MongoDB إنشاء مجموعة إدراج MongoDB البحث عن MongoDB استعلام MongoDB نوع MongoDB MongoDB يحذف مجموعة MongoDB Drop تحديث MongoDB حد MongoDB

مرجع بايثون

نظرة عامة على بايثون وظائف بايثون المضمنة طرق سلسلة بايثون طرق قائمة بايثون طرق قاموس بايثون طرق Python Tuple طرق تعيين بايثون طرق ملف بايثون كلمات بايثون استثناءات بايثون مسرد بايثون

مرجع الوحدة

وحدة عشوائية وحدة الطلبات وحدة الإحصاء وحدة الرياضيات وحدة cMath

كيف بايثون

إزالة قائمة التكرارات عكس سلسلة أضف عددين

أمثلة بايثون

أمثلة بايثون مترجم بايثون تمارين بايثون مسابقة بايثون شهادة بايثون

تعلم الآلة - مقياس


مقياس الميزات

عندما تحتوي بياناتك على قيم مختلفة ، وحتى وحدات قياس مختلفة ، فقد يكون من الصعب مقارنتها. ما هو الكيلوجرام مقارنة بالمتر؟ أم ارتفاع مقارنة بالوقت؟

الجواب على هذه المشكلة هو التوسع. يمكننا تحجيم البيانات إلى قيم جديدة يسهل مقارنتها.

ألقِ نظرة على الجدول أدناه ، فهو نفس مجموعة البيانات التي استخدمناها في فصل الانحدار المتعدد ، ولكن هذه المرة يحتوي عمود الحجم على قيم باللترات بدلاً من سم 3 (1.0 بدلاً من 1000).

الملف مخصص لأغراض الاختبار فقط ، يمكنك تنزيله من هنا: cars2.csv

السيارات نموذج الصوت وزن ثاني أكسيد الكربون
تويوتا Aygo 1.0 790 99
ميتسوبيشي نجمة الفضاء 1.2 1160 95
سكودا سيتيجو 1.0 929 95
فيات 500 0.9 865 90
ميني كوبر 1.5 1140 105
فولكس فاجن فوق! 1.0 929 105
سكودا فابيا 1.4 1109 90
مرسيدس صف 1.5 1365 92
معقل العيد 1.5 1112 98
أودي أ 1 1.6 1150 99
هيونداي أنا 20 1.1 980 99
سوزوكي سويفت 1.3 990 101
معقل العيد 1.0 1112 99
هوندا سيفيك 1.6 1252 94
هيونداي I30 1.6 1326 97
أوبل أسترا 1.6 1330 97
بي ام دبليو 1 1.6 1365 99
مازدا 3 2.2 1280 104
سكودا سريعون 1.6 1119 104
معقل ركز 2.0 1328 105
معقل مونديو 1.6 1584 94
أوبل شارة 2.0 1428 99
مرسيدس الفئة- C 2.1 1365 99
سكودا اوكتافيا 1.6 1415 99
فولفو S60 2.0 1415 99
مرسيدس CLA 1.5 1465 102
أودي A4 2.0 1490 104
أودي أ 6 2.0 1725 114
فولفو V70 1.6 1523 109
بي ام دبليو 5 2.0 1705 114
مرسيدس الفئة- E 2.1 1605 115
فولفو اكس سي 70 2.0 1746 117
معقل بي ماكس 1.6 1235 104
بي ام دبليو 2 1.6 1390 108
أوبل زافيرا 1.6 1405 109
مرسيدس SLK 2.5 1395 120

قد يكون من الصعب مقارنة الحجم 1.0 بالوزن 790 ، ولكن إذا قمنا بقياسهما إلى قيم قابلة للمقارنة ، فيمكننا بسهولة معرفة مقدار مقارنة إحدى القيمين بالقيمة الأخرى.

هناك طرق مختلفة لقياس البيانات ، في هذا البرنامج التعليمي سوف نستخدم طريقة تسمى التوحيد القياسي.

تستخدم طريقة التقييس هذه الصيغة:

z = (x - u) / s

أين zهي القيمة الجديدة ، xهي القيمة الأصلية ، uهو المتوسط sوالانحراف المعياري.

إذا أخذت عمود الوزن من مجموعة البيانات أعلاه ، فإن القيمة الأولى هي 790 ، وستكون القيمة المقاسة:

(790 - ) / = -2.1

إذا أخذت عمود الحجم من مجموعة البيانات أعلاه ، فإن القيمة الأولى هي 1.0 ، والقيمة المقاسة ستكون:

(1.0 - ) / = -1.59

يمكنك الآن مقارنة -2.1 بـ -1.59 بدلاً من مقارنة 790 بـ 1.0.

لا يتعين عليك القيام بذلك يدويًا ، تحتوي وحدة Python sklearn النمطية على طريقة تسمى StandardScaler() والتي تقوم بإرجاع كائن Scaler مع طرق لتحويل مجموعات البيانات.

مثال

قياس كل القيم في عمودي الوزن والحجم:

import pandas
from sklearn import linear_model
from sklearn.preprocessing import StandardScaler
scale = StandardScaler()

df = pandas.read_csv("cars2.csv")

X = df[['Weight', 'Volume']]

scaledX = scale.fit_transform(X)

print(scaledX)

نتيجة:

لاحظ أن القيمتين الأوليين هما -2.1 و -1.59 ، وهو ما يتوافق مع حساباتنا:

[[-2.10389253 -1.59336644]
 [-0.55407235 -1.07190106]
 [-1.52166278 -1.59336644]
 [-1.78973979 -1.85409913]
 [-0.63784641 -0.28970299]
 [-1.52166278 -1.59336644]
 [-0.76769621 -0.55043568]
 [ 0.3046118  -0.28970299]
 [-0.7551301  -0.28970299]
 [-0.59595938 -0.0289703 ]
 [-1.30803892 -1.33263375]
 [-1.26615189 -0.81116837]
 [-0.7551301  -1.59336644]
 [-0.16871166 -0.0289703 ]
 [ 0.14125238 -0.0289703 ]
 [ 0.15800719 -0.0289703 ]
 [ 0.3046118  -0.0289703 ]
 [-0.05142797  1.53542584]
 [-0.72580918 -0.0289703 ]
 [ 0.14962979  1.01396046]
 [ 1.2219378  -0.0289703 ]
 [ 0.5685001   1.01396046]
 [ 0.3046118   1.27469315]
 [ 0.51404696 -0.0289703 ]
 [ 0.51404696  1.01396046]
 [ 0.72348212 -0.28970299]
 [ 0.8281997   1.01396046]
 [ 1.81254495  1.01396046]
 [ 0.96642691 -0.0289703 ]
 [ 1.72877089  1.01396046]
 [ 1.30990057  1.27469315]
 [ 1.90050772  1.01396046]
 [-0.23991961 -0.0289703 ]
 [ 0.40932938 -0.0289703 ]
 [ 0.47215993 -0.0289703 ]
 [ 0.4302729   2.31762392]]


توقع قيم ثاني أكسيد الكربون

كانت المهمة في فصل الانحدار المتعدد هي التنبؤ بانبعاثات ثاني أكسيد الكربون من السيارة عندما تعرف وزنها وحجمها فقط.

عندما يتم قياس مجموعة البيانات ، سيتعين عليك استخدام المقياس عند توقع القيم:

مثال

توقع انبعاثات ثاني أكسيد الكربون من سيارة 1.3 لتر تزن 2300 كيلوجرام:

import pandas
from sklearn import linear_model
from sklearn.preprocessing import StandardScaler
scale = StandardScaler()

df = pandas.read_csv("cars2.csv")

X = df[['Weight', 'Volume']]
y = df['CO2']

scaledX = scale.fit_transform(X)

regr = linear_model.LinearRegression()
regr.fit(scaledX, y)

scaled = scale.transform([[2300, 1.3]])

predictedCO2 = regr.predict([scaled[0]])
print(predictedCO2)

نتيجة:

[107.2087328]