
داده هایی که با متن دسته بندی شده باشن برای ما غیر قابل قبول هستند , به این تصویر دقت کنید :

این رو یادتون باشه : در ماشین لرنینگ ما نیاز داریم که همه چیز عددی باشه .
پس توی این مرحله تنها کاری که میخوایم بکنیم اینه که داده هامون رو از حالت String به Number اما با منطق تبدیل کنیم . حالا چه روش هایی داریم :
import pandas as pd
df = pd.DataFrame({
'Gender': ['Male', 'Female', 'Female', 'Male', 'Female']
})
هر دسته رو به یک عدد تبدیل میکنیم.
from sklearn.preprocessing import LabelEncoder le = LabelEncoder()
df['Gender_encoded'] = le.fit_transform(df['Gender'])

برای هر دسته، یک ستون جداگانه ایجاد میکنیم و فقط یکی از اونها 1 میشه، بقیه 0.
df = pd.DataFrame({
'Color': ['Red', 'Blue', 'Green', 'Red']
})
df_encoded = pd.get_dummies(df, columns=['Color'])

اگر دستهها ترتیب منطقی دارن (مثل سطح تحصیلات: دیپلم > فوق دیپلم > لیسانس > فوق لیسانس )، میتونیم عددگذاری کنیم:
df = pd.DataFrame({
'Education': ['Bachelor', 'PhD', 'High School', 'Master']
})
order = {'High School': 0, 'Bachelor': 1, 'Master': 2, 'PhD': 3}
df['Education_encoded'] = df['Education'].map(order)

همین :) امیدوارم این پست رو دوست داشته باشید و خوشحال میشم نظرتون رو در مورد این پست بدونم