【发布时间】:2020-07-17 07:01:11
【问题描述】:
我有一个从 -3 到 3 的整数列表。
list = [-0.33, -2.5, 2.1, ......., -1.2, -2.4444, 1.788]
有没有办法将0到1之间的所有数字转换?
【问题讨论】:
-
假设您的列表是
data,请使用lo, hi = min(data), max(data); print ([(i - lo) / (hi-lo) for i in data])。不必看中numpy或sklearn。 -
这个问题明确指出输入范围为 -3 到 3。声称它是重复的、@Henry 的评论和 @Divyessh 的答案都是不正确的,因为它们标准化为它的最小值和最大值。根据问题的措辞,这不是所要问的。
-
OP 正在询问
Is there a way to convert all the numbers between 0 to 1。我看不出将其标准化@Liam 有什么不正确的。 -
@HenryYik 我将“范围从 -3 到 3”解释为“将(-3 到 3)的范围映射到(0 到 1)的范围。我认为这是最合理的解释,我怀疑 OP 会提到输入的范围,除非这是预期的。你能澄清一下吗,@Chris_007?
标签: python python-3.x floating-point numbers