ترميز الأعمدة الفئوية
أساسيات ترميز one-hot والترميز بالتصنيفات
ترميز الأعمدة الفئوية درس مجاني في Data Science Academy على CoddyKit. هذا هو الدرس 2 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Data Science Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Data Science Academy 4 دروس في المجموع.
بعض أجزاء هذا الدرس لم تُترجم بعد وتظهر باللغة الإنجليزية.
Why Encoding Matters
Most models only understand numbers, yet your data is full of words like red or blue. Encoding turns those labels into numbers a model can learn from. 🔢
Nominal vs Ordinal
Some categories have order, like small, medium, large. Others, like city names, do not. This order decides which encoding is honest.
Label Encoding
Label encoding assigns each category an integer: red becomes 0, blue becomes 1. Simple, but it invents an order that may not be real.
from sklearn.preprocessing import LabelEncoder
le = LabelEncoder()
codes = le.fit_transform(df['color'])The Fake-Order Trap
If blue is 1 and green is 2, a model may think green is greater than blue. For nominal data that false ranking can hurt accuracy.
One-Hot Encoding
One-hot encoding makes one new column per category, marked 1 or 0. No fake order, just clean yes-or-no flags.
get_dummies in pandas
The fastest one-hot in pandas is get_dummies. Hand it a column and it expands every category into its own 0/1 column.
dummies = pd.get_dummies(df['color'])Avoid the Dummy Trap
The columns are perfectly correlated, so drop one with drop_first. This keeps linear models stable and avoids redundant information.
pd.get_dummies(df['color'], drop_first=True)OneHotEncoder for Pipelines
For models, prefer scikit-learn's OneHotEncoder. It remembers the categories it learned, so train and test stay perfectly aligned.
from sklearn.preprocessing import OneHotEncoder
enc = OneHotEncoder(handle_unknown='ignore')Encode Order on Purpose
When order is real, map it yourself so small to large becomes 1 to 3. An ordinal mapping keeps the meaning intact.
order = {'small': 1, 'medium': 2, 'large': 3}
df['size_num'] = df['size'].map(order)Beware High Cardinality
One-hot on a column with thousands of values explodes into thousands of columns. For high cardinality, consider grouping rare values first.
Handle Unseen Categories
New data may contain labels your encoder never saw. Plan for this so an unseen category does not crash your prediction step.
Quick Check
Your color column has no natural order. Which encoding avoids inventing a false ranking?
Recap: Encoding
You turned words into numbers: one-hot for unordered categories, ordinal maps for real order, and label encoding only when order does not matter. 🎉
الأسئلة الشائعة
هل درس «ترميز الأعمدة الفئوية» مجاني؟
نعم — نص درس «ترميز الأعمدة الفئوية» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Data Science Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Data Science Academy 4 دروس في المجموع.
ماذا ستتعلم في «ترميز الأعمدة الفئوية»؟
أساسيات ترميز one-hot والترميز بالتصنيفات تتمرن على Data Science Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Data Science Academy؟
لا تُشترط خبرة سابقة. Data Science Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 2 من أصل 4.
كم من الوقت يستغرق درس «ترميز الأعمدة الفئوية»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Data Science Academy هذا؟
نعم. كل درس في Data Science Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- تحويل الأرقام إلى فئات
- ترميز الأعمدة الفئوية
- تحجيم الأرقام وتطبيعها
- إنشاء ميزات من التواريخ والنصوص