Python DataFrame常用的数据转换操作

本文详细介绍了一种车牌数据处理流程,包括自定义字典进行数据映射、车牌信息提取、标签处理及one-hot编码应用。通过具体实例,展示了如何使用Python的pandas库进行数据预处理,为后续的机器学习任务做好准备。

一、创建实例 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

1.1 自定义字典,map转换’车型’数据

# 奔驰 -> 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

1.2 提取’车牌号’列数据信息

# 沪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

1.3 处理’标签’列数据

# 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

1.4 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

1.5 待更新

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值