python - 当我得到科学数字但想输入一个数字的输出时
问题描述
我的输入是这个
from sklearn.compose import ColumnTransformer
from sklearn.preprocessing import OneHotEncoder
ct = ColumnTransformer(transformers=[('encoder', OneHotEncoder(), [0])],
remainder='passthrough')
x = np.array(ct.fit_transform(x))
print(x)
输出是这个
[1.00000000e+00 0.00000000e+00 0.00000000e+00 3.70000000e+01
6.70000000e+04]]
解决方案
代码没有问题,只是格式化。
我认为您的特定问题可以通过设置精度来解决,例如使用 np.around 和设置小数参数。
import numpy as np
a = np.array([1e-9, 1e-2])
print(a)
# array([1.e-09, 1.e-02])
np.around(a, decimals=3)
# array([0. , 0.01])
推荐阅读
- php - 我想在具有单个主键的一列中插入数据库中的多个数据
- python - FileNotFoundError: [Errno 2] No such file or directory: 'python': 'python' while running a python script
- spring-boot - 获取“访问被拒绝(用户是匿名的);重定向到身份验证入口点”。同时从 swagger ui 页面授权
- android - 来自firebase的recyclerview加载菜单返回空白活动
- python - 32位和64位python版本的exe之间的区别
- python - Pandas 大步切行
- arrays - 传递给模型的 Numpy 数组列表不是模型预期的大小
- tensorflow - 通过源代码安装 TensorFlow 与使用 pip 有什么区别?
- google-app-engine - java.lang.NoClassDefFoundError: java.lang.reflect.Parameter 是一个受限类
- kubernetes - 有没有更好的方法来等待 Kubernetes 作业完成?