我有一个数据框
max1 max2 max3 max4 max5 max6 max7 max8 max9 max10
x9 x8 x7 x6 x10 x5 x4 x2 x1 x3
x5 x3 x4 x6 x10 x1 x7 x2 x8 x9
我的预期输出应为:
max1 max2 max3 max4 max5 max6 max7 max8 max9 max10
abc ab cf cd zx vb qw er gh fg
vb fg qw cd zx gh cf er ab abc
这是一个巨大的数据,我希望它像一个函数和使用数组。
答案 0 :(得分:2)
我们创建另一个vector
('lvls2'),其顺序与'df1'('lvls')的unique
元素的顺序相同,然后遍历列({{1} }),转换为lapply(
,指定factor
,然后重新转换回labels
,并将其分配给原始数据集。
character
df1[] <- lapply(df1, function(x) as.character(factor(x,
levels=lvls, labels=lvls2)))