datawhale机器学习,薛智怀,广东金融学院(笔记2)

文章介绍了如何使用Python中的pandas和sklearn库对数据集进行预处理,包括计算eid列的频率分布和平均值,以及创建udmap列中unknown值的布尔表示。随后,使用DecisionTreeClassifier训练了一个树决策分析器。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

4,处理eid(B列)

value_counts()获取eid的频率分布,该结果将存储在eid_freq中:

train_data['eid_freq'] = train_data['eid'].map(train_data['eid'].value_counts())

test_data['eid_freq'] = test_data['eid'].map(train_data['eid'].value_counts())

mean()计算平均值,存储在eid_mean中:

train_data['eid_mean'] = train_data['eid'].map(train_data.groupby('eid')['target'].mean())

test_data['eid_mean'] = test_data['eid'].map(train_data.groupby('eid')['target'].mean())

5,处理udmap(C列)

 通过比较 'udmap' 列的值是否等于 'unknown',生成了一个布尔型的数据。当 'udmap' 列的值为 'unknown' 时,返回 True,否则返回 False。再通过调用 astype(int) 将布尔值转换为整数(True 转换为 1,False 转换为 0)。

train_data['udmap_isunknown'] = (train_data['udmap'] == 'unknown').astype(int)

test_data['udmap_isunknown'] = (test_data['udmap'] == 'unknown').astype(int)

这个布尔(或整数)结果被存储在新的列 'udmap_isunknown' 中。因此,对于每个数据行,'udmap_isunknown' 列的值将表示该行的 'udmap' 值是否为 'unknown'。

6,用scikit训练树决策分析器

import lightgbm as lgb

from sklearn.linear_model import LogisticRegression

from sklearn.tree import DecisionTreeClassifier

clf = DecisionTreeClassifier()

clf.fit(

    train_data.drop(['udmap', 'common_ts', 'uuid', 'target'], axis=1),

    train_data['target']

)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值