【发布时间】:2021-09-01 16:58:55
【问题描述】:
我有一个这样的数据框:
df <- data.frame(FC=c(1, 2, 4, 2, 1, -4, -2))
我正在尝试重新调整 0-1 之间的正值和 0--1 之间的负值,因此输出将是:
FC
0.25
0.5
1
0.5
0.25
-1
-0.5
我在 r 中尝试过 "scales" 包
df$FC <- rescale(df$FC, to = c(0, 1))
但它正在重新调整 0-1 之间的所有值。
如何按各个范围对列进行规范化?
非常感谢您提供的任何帮助。
【问题讨论】:
-
你需要
range(df$FC) -
确定它是否可以提供所需的输出。谢谢兄弟。
-
但是,尽管
rescale(df$FC, to = range(df$FC))和rescale(df$FC, to = range(abs(df$FC)))没有提供您预期的输出 -
我认为
from已经在执行range,如果我们将to指定为范围,它会返回输入本身 -
基本上分别在正数和负数上运行 stackoverflow.com/questions/5468280/…
标签: r tidyverse scale normalization rescale