You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何创建函数对dataframe指定特征的tous_genres等变量做归一化处理

已完成的基础归一化函数

你已经实现的单输入参数归一化函数normaliser_vecteur用于向量标准化,对应的最小-最大归一化公式为:I=(X-Xmin)/(Xmax-Xmin),原函数可修正运算顺序避免结果错误,修正后代码如下:

normaliser_vecteur <- function(x){ 
  i <- (x - min(x)) / (max(x) - min(x))
  return(i)
} 

原提问附带数据框前几行截图,展示了包含tous_genres、genre_f、genre_h等字段的数据集结构。

多特征归一化函数实现

你需要的normaliser_caracteristiques函数可通过如下代码实现,完全匹配需求:

library(dplyr)

normaliser_caracteristiques <- function(Data, liste_caracteristiques, fn) {
  # 1. 过滤数据源,仅保留指定待处理特征+三个待归一化字段
  processed_data <- Data %>% 
    select(all_of(liste_caracteristiques), tous_genres, genre_f, genre_h) %>%
    # 2. 对三个目标字段分别应用归一化函数,生成新字段存储结果
    mutate(
      norm_tous_genres = fn(tous_genres),
      norm_genre_f = fn(genre_f),
      norm_genre_h = fn(genre_h)
    )
  return(processed_data)
}

函数三个输入参数说明:

  • Data:作为数据源的data.frame
  • liste_caracteristiques:待归一化的特征向量
  • fn:要使用的归一化函数的名称

调用示例

# 替换为实际数据集和特征列表即可调用
result <- normaliser_caracteristiques(
  Data = 你的数据集名称,
  liste_caracteristiques = c("特征1", "特征2"),
  fn = normaliser_vecteur
)

内容的提问来源于stack exchange,提问作者p1077092

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 07:45:04