我试图根据第二个变量(因子)对变量(使用最小值和最大值)进行标准化。
使用jobForm = JobForm(request.POST)
jobForm.is_valid()
jobForm.cleaned_data
数据框作为示例,它会更清晰。
这将diamonds
变量标准化为0-1区间:
carat
但我想根据di <- diamonds
di$caratn <- (di$carat-min(di$carat))/(max(di$carat)-min(di$carat))
变量(这是一个因素)进行规范化。也就是说,获取给定clarity
的所有carat
值并归一化0-1。
结果是clarity
SI2的最高carat
值为1,其他澄清值相同。
答案 0 :(得分:1)
以下是使用ave()
:
di <- within(di,caratn <- ave(carat,clarity,FUN=function(x) (x-min(x))/diff(range(x))))