我正在将单列dt与辅助表dt合并,最终将其添加到较大的dt中。
我的名为“ full”的data.table是一个宽而长的data.table,我在其中选择“ category_product”列,该列是一系列小吃类别。我将full $ category_product复制到它自己的dt中。
Helper1是一个dt,它列出了零食的每个类别一次,以及零食名称的列和相关的编号。我需要使用这种VLOOKUP样式,以便将每种小吃的名称和编号列在类别下方。
我正在使用的行是这个,它的变化是:
helper_categories = merge(assist1, helper1)
这是我的过程:
assist1 = data.table(full$category_product)
setnames(assist1, old = c('V1'),new = c('category_product'))
assist1[] <- lapply(assist1, as.character)
helper_categories = merge(assist1, helper1)
我的aid1表(超过一百万行,但是)如下:
assist1 = data.table(category_product = 'Salty','Water','Juice, tea and smoothies')
我完整的helper1表如下:
helper1 = data.table(
category_product = c('Sugar candy','Cookies, pastries and cereals','Chocolate based','Salty','Juice, tea and smoothies','Carbonates and energy drinks','Water','Milk based'),
ph1 = c('sugar_confectionary_incl_gums_1','bakery_and_pastries_1','chocolate_based_9','salty_excl_crisps_4','tea_and_coffee_based_4','unflavoured_carbonates_3','water_(flavoured)_2','milk_and_milk-based_4'),
mh1 = c(2.054545,2.618182,2.172727,2.963636,3.136364,2.390909,3.154545,2.936364))
但是,当我打开helper_categories时得到的结果只是一个带有“碳酸盐和能量饮料”的数据表,其信息一遍又一遍地重复。看起来像这样:
helper_categories = data.table(category_product = rep('Carbonates and energy drinks', 20), ph1 = rep('unflavoured_carbonates_3', 20), mh1 = rep(2.390909, 20)
知道发生了什么或如何解决?我将通用列的类调整为字符,因为我认为可能是这样,但无济于事。