DataFrame
1. 創建 DataFrame
# 創建一個空的 DataFrame
#df = pd.DataFrame(columns=['車牌號', '車型', '標籤'])
df = pd.DataFrame([['滬C 100232', '奔馳', 'Y'],
['魯A 801353', '奧迪', 'N'],
['豫H 666132', '寶馬', 'Y']])
df.columns = ['車牌號', '車型', '標籤']
車牌號 車型 標籤
0 滬C 100232 奔馳 Y
1 魯A 801353 奧迪 N
2 豫H 666132 寶馬 Y
2. mapping變換【車型】列數據
# 奔馳 -> 1, 奧迪 -> 2, 寶馬 -> 3.
mapping_1 = {'奔馳': 1,
'奧迪': 2,
'寶馬': 3}
df['車型'] = df['車型'].map(mapping_1)
車牌號 車型 標籤
0 滬C 100232 1 Y
1 魯A 801353 2 N
2 豫H 666132 3 Y
3. 處理【車牌號】列數據
# 滬C 100232 ->滬C , 魯A 801353 ->魯A , 豫H 666132 ->豫H.
df['車牌號'] = list(map(lambda var: var[:2],df['車牌號'].tolist()))
車牌號 車型 標籤
0 滬C 1 Y
1 魯A 2 N
2 豫H 3 Y
4. 處理【標籤】列數據
# Y ->0 , N ->1 , Y ->0.
mapping_2 = {value:ind for ind,value in enumerate(set(df['標籤']))}
df['標籤'] = df['標籤'].map(mapping_2)
車牌號 車型 標籤
0 滬C 1 0
1 魯A 2 1
2 豫H 3 0
5. one_hot 處理【車牌號】
pd.get_dummies(df)
#pd.get_dummies(df['車牌號'])
車型 標籤 車牌號_滬C 車牌號_豫H 車牌號_魯A
0 1 0 1 0 0
1 2 1 0 0 1
2 3 0 0 1 0