美文网首页
R语言缩放-1到1

R语言缩放-1到1

作者: 可能性之兽 | 来源:发表于2022-05-05 00:23 被阅读0次

    谷歌找了半天也没有在R语言这里找到能够直接缩放数据-1到1的函数,我要的不是scale的归一化,就是简单的缩放到-1和1,只好自己按照公式写了一个
    将数据归一化到任意区间范围的方法irober的博客-CSDN博客归一化到指定区间
    y = (ymax-ymin)*(x-xmin)/(xmax-xmin) + ymin

    normfun<-function(data,ymin=-1,ymax=1){
      xmax=max(data)
      xmin=min(data)
      
      y = (ymax-ymin)*(data-xmin)/(xmax-xmin) + ymin
    
      return(y)
      
    }
    apply(data_keygene_exp,2,function(x)normfun(x)) |>  as.data.frame() ->norm_data
    
    

    ps:最后还是找到了,rescale函数就可以,两者结果是一样的
    dplyr - how to rescale/normalize data between -1 and 1 in R using groups - Stack Overflow

    library(dplyr)
    library(scales)
    df %>% 
        group_by(Name) %>%
        mutate(Data = rescale(Data, to = c(-1, 1))) %>%
        ungroup
    

    相关文章

      网友评论

          本文标题:R语言缩放-1到1

          本文链接:https://www.haomeiwen.com/subject/epqnyrtx.html