python - 如何将数字列表四舍五入到一组允许的数字
问题描述
我一直在尝试通过下面的代码运行一个数字列表,以将不同的数字转换为某些允许的数字,但必须有比这更好的方法。
goalNum = [-3, 0, 2, 4, 7, 10, 12]
def roundGrade(grades):
gradeRounded = []
for i in grades:
if i < -1.5:
gradeRounded.append(-3)
elif -1.5 <= i < 1:
gradeRounded.append(0)
elif 1 <= i < 3:
gradeRounded.append(2)
elif 3 <= i < 5.5:
gradeRounded.append(4)
elif 5.5 <= i < 8.5:
gradeRounded.append(7)
elif 8.5 <= i < 11:
gradeRounded.append(10)
elif 11 <= i <= 12:
gradeRounded.append(12)
gradeRounded = np.array(gradeRounded)
return gradeRounded
现在我已经完成了将相应的舍入等级附加到一个新向量,然后只使用它,但我想将它缩短一点。
解决方案
推荐阅读
- powerbi - Power BI API - 按 ID 获取数据集
- android - 反向 AppBarLayout.ScrollingViewBehavior
- r - 将 SAS Proc Shewhart 转换为 R 编程
- php - mysqli_get_client_stats 是否向 sql server 发送请求
- printing - 修改与 gwbasic 一起使用的基本文件
- sql - 使用 django ORM 转换数据
- iphone - iPhone Xr 的刘海尺寸(以像素为单位)
- php - 如何在不重复代码的情况下根据变量更改 php if 语句?
- python - 在 python 中每次运行随机森林、非线性 SVC 和多项式 NB 时获得不同的准确度以进行文本分类
- r - 如何使用 ggplot 在 R 中绘制学生化残差和拟合值?