我制作了一个简单的代码,可以将索引号更改为名称
select locvalue.LocaliZationKeyId, locvalue.LanguageId
from languages lang left join localizationvalues locvalue
on lang.Id = locvalue.LanguageId
left join [LocalizationKeys] locKey
on lockey.Id = locvalue.LocalizationKeyId
并将此函数应用于data.frame。
Data.frame名称为“ga.screen”,列名称为“dimension1”。
change_name = function(x) {
valid_user[match(x, valid_user$id),'name']
}
效果很好。
接下来我想制作能够应用各种情况的代码功能。
ga.screen[, 'dimension1'] =sapply(ga.screen[, 'dimension1'], change_name)
这是完全相同的代码,但后者不起作用!
为什么会这样?这是readable_user_id = function(data, col) {
data[, col] = sapply(data[, col], change_name)
}
readable_user_id(ga.screen, 'dimension1')
问题,在功能上不起作用吗?或者这个sapply
问题是否无法作为参数传递?
答案 0 :(得分:3)
您的函数应该返回修改后的data
,请尝试
readable_user_id = function(data, col) {
data[, col] = sapply(data[, col], change_name)
data
}