重新调整R中的变量

时间:2014-09-21 17:47:01

标签: r

我有一个名为Esteem的变量,其比例为1:7。我想将它重新缩放到1:100。我知道R程序可以这样做,但是我的语法有问题。

有人可以提供一个示例,说明如何重新调整该变量?另外,我可以在R Commander中使用哪种工具来做到这一点吗?

非常感谢!

2 个答案:

答案 0 :(得分:5)

我不认识RCommander。有一个名为RPMG的包具有重新缩放功能,通常用于图形目的。我不确定它是否完全按照您的意愿行事(因为您还未提供包含示例输出的示例)。

但是,这可能是相关的。

set.seed(1)
x<-sample(1:7, 10, replace=T)
x
#[1] 2 3 5 7 2 7 7 5 5 1

library(RPMG)
RESCALE(x, 1, 100, 1, 7)
#[1]  17.5  34.0  67.0 100.0  17.5 100.0 100.0  67.0  67.0   1.0

RESCALE之内x之后的参数是:new.min,new.max,old.min,old.max of scale。

这个功能实际上非常简单:

RESCALE <- function (x, nx1, nx2, minx, maxx) 
{ nx = nx1 + (nx2 - nx1) * (x - minx)/(maxx - minx)
  return(nx)
}

答案 1 :(得分:2)

你也可以使用基础R做这样的事情(使用@jalapics数据)

seq(1, 100, length.out = 7)[x]
## [1]  17.5  34.0  67.0 100.0  17.5 100.0 100.0  67.0  67.0   1.0