python - 在 python 中将数据分类到 bin 中的有效方法
问题描述
假设我有一个浮点数据集 (x),它可以假设 0.0 到 1.0 之间的任何值。我想将数据分类到自定义箱中,例如:
cat= 0 # the output category
if x > 0.8 and x<=0.9:
cat = 1
if x > 0.7 and x<=0.8:
cat=2
if x>0.6 and x<=0.7:
cat = 3
等等......这是最有效的(就我必须写多少行而言)方法吗?我在想是否有某种方法可以让我只指定类别的上限和下限以及类别编号,而不必编写这么多的 if 语句。
解决方案
我建议您将数据移动到熊猫数据框中
df['data'] = pd.DataFrame(x)
binInterval = [0, 0.6, 0.7, 0.8, 0.9]
binLabels = [0, 4, 3, 2, 1]
df['binned'] = pd.cut(df['data'], bins = binInterval, labels=binLabels)
在此处参考文档
推荐阅读
- bash - 将脚本执行输出存储在 bash 变量中
- c++ - 有人可以帮我纠正这个“低于 100 的质数”代码的输出吗?
- css - 如何在文档中悬停时更改下一个 N 元素
- matlab - 如何在多个引用的库中使用相同的数据
- javascript - Angular Http拦截器:catchError并返回成功
- python - 具有不同结构指针的函数的 Swig 包装器
- angular - ng-build 命令后路由器路由中断
- encryption - 使用 Pycryptodome 进行混合加密的正确密钥交换过程
- laravel - 如何在 vue.js 2 的 v-select 中设置选项值?
- python - Keras中类不平衡多类分类器的损失函数