特征映射 lambda if

数据集特征映射后,多分类进行数据筛选,理论上if可以无限套下去,我只是映射了4个,
映射出多个类,更有利于精准化分析与预测,让数据
data[“pc”] = data[“pc”].map(lambda x:3 if x >=1 else (2 if 0.5<=x<1 else (1 if 0<=x<0.5 else 0)))
本来是特征映射成二分类,我觉得粗糙了些,搜了一个小时搞定,这样就可以多分类了
原来是这样滴
data[“pc”] = data[“pc”].map(lambda x:1 if x >=0 else -1)

但是今天我学数据分析知道了一个新函数是pandas的cut,用这处理起来可以更简单
data[“bins”] = pd.cut(data.pc,bins = 4,labels=list(‘1234’))

原来这是分段分区间,又知道一个搜索的方法
我用的是jupyter notebook
`df[‘bins’]=pd.cut(df.avg,bins = 4,labels=list(‘1234’)) # 先分段 后赋值

pd.cut( [‘x’, ‘bins’, ‘right=True’, ‘labels=None’, ‘retbins=False’, ‘precision=3’, ‘include_lowest=False’, “duplicates=‘raise’”],)`
参考自https://blog.csdn.net/weixin_40161254/article/details/86231869 算是进行的一个衍生,让多一个参考.

这都啥…

python 列表推导式的多个if和else的书写,

[ 3 if x>7 else (2 if 7>x>3 else (1 if 3>x>0 else 0)) for x in range(10)]

写上 多if与else判断的解析式

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值