R使用最大值规范化数据框列

R normalize dataframe column using max

R新手

我看过一些关于创建函数以根据标准差等对数据进行归一化的帖子。但我的问题有点不同。

我有一个大数据框。我要一个。找到数据集中所有名称的平均值。 b.根据最大值对平均值进行归一化。示例数据:

df<- data.frame(name=c("lauren", "max", "lauren", "pat"), value=(1:4))

得到我的平均值:

meanValue <-aggregate(value ~name, data=df, mean)

输出应该是:

df<- data.frame(name=c("lauren", "max", "pat"), normalizedMean=c(.5, .5, 1))

但我一直在研究如何获取最大值并在相应的 df 数据帧中创建一个新变量。我知道这是一个应用函数,但我怀疑聚合可以在这里组合。

我认为您发布的最终解决方案并不完全是标准化值。它应该是 c(0,0,1)

df<- data.frame(name=c("lauren", "max", "lauren", "pat"), value=(1:4))

meanValue <-aggregate(value ~name, data=df, mean)

min_val<-min(meanValue$value)
max_val<-max(meanValue$value)
meanValue$normalizedMean<-(meanValue$value-min_val)/(max_val-min_val) #normalizing

meanValue 

怎么样

df<- data.frame(name=df$name, 
   normalizedMean=meanValue$value/max(meanValue$value))

?