根据我的范围标准化我的 table
normalize my table according to my ranges
我想根据所有 table 的最大值和最小值对所有 table(不是按列或行)进行归一化。
例如:
在这整个 table 中:
最大值:9
最小值:0
所以我想将所有这些介于 0 和 9 之间的数字归一化为介于 0 和 1 之间!
有帮助吗?
这种归一化的标准公式是
(xi - min(x))/(max(x) - min(x))
所以对于这些数据我们可以做
vals <- unlist(df)
max_val <- max(vals)
min_val <- min(vals)
df[] <- (vals - min_val)/(max_val - min_val)
df
# column1 column2 column3
#1 0.1111 0.3333 1.0000
#2 0.2222 0.4444 0.6667
#3 0.3333 0.6667 0.3333
#4 0.4444 0.3333 0.1111
#5 0.5556 0.0000 0.7778
数据
df <- data.frame(column1 = 1:5, column2 = c(3, 4, 6, 3, 0),
column3 = c(9, 6, 3, 1, 7))
我想根据所有 table 的最大值和最小值对所有 table(不是按列或行)进行归一化。
例如:
在这整个 table 中: 最大值:9 最小值:0
所以我想将所有这些介于 0 和 9 之间的数字归一化为介于 0 和 1 之间!
有帮助吗?
这种归一化的标准公式是
(xi - min(x))/(max(x) - min(x))
所以对于这些数据我们可以做
vals <- unlist(df)
max_val <- max(vals)
min_val <- min(vals)
df[] <- (vals - min_val)/(max_val - min_val)
df
# column1 column2 column3
#1 0.1111 0.3333 1.0000
#2 0.2222 0.4444 0.6667
#3 0.3333 0.6667 0.3333
#4 0.4444 0.3333 0.1111
#5 0.5556 0.0000 0.7778
数据
df <- data.frame(column1 = 1:5, column2 = c(3, 4, 6, 3, 0),
column3 = c(9, 6, 3, 1, 7))