【问题标题】:LabelEncoder implementation in rr中的LabelEncoder实现
【发布时间】:2017-04-11 02:09:09
【问题描述】:

G$name - 数据框的字符列

labels_name <- unique(G$name)

LabelEncoder <- function(value, labels) {
   r <- as.numeric(which(labels == value))
   returnValue(r)
}

G$name1 <- LabelEncoder(G$name, labels_name)

执行上面的代码会产生下一个错误:

$&lt;-.data.frame(*tmp*, "name1", value = c(1, 4, 7, 10, 11, 中的错误: 替换有 100650 行,数据有 302194 另外:警告信息: 在标签 == 值中: 较长的对象长度不是较短对象长度的倍数

怎么了?

【问题讨论】:

    标签: r


    【解决方案1】:

    我通过以下方式解决我的问题:

    因为 G$name 是一个向量,所以我使用了下一个附加函数

    LabelEncoder1 <- function(x, labels) {
        r <- sapply(x, LabelEncoder, labels)
    }
    
    G$name1 <- LabelEncoder1(G$name, labels_name)
    

    【讨论】:

      猜你喜欢
      • 2021-01-20
      • 1970-01-01
      • 1970-01-01
      • 2016-12-28
      • 1970-01-01
      • 2022-11-27
      • 2017-06-06
      • 2018-12-28
      • 2011-01-06
      相关资源
      最近更新 更多