数据集特征映射后,多分类进行数据筛选,理论上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判断的解析式