如何重新排列列';R中的s元素?

如何重新排列列';R中的s元素?,r,dataframe,R,Dataframe,我有一个值为1,2,4,7的列,如何将其设为1到4?即: 1==1 2==2 4==3 7==4 col 1 2 7 1 4 7 输出 col 1 2 4 1 3 4 将其转换为系数,然后再转换为数值: x <- c(1, 2

我有一个值为1,2,4,7的列,如何将其设为1到4?即:

 1==1  2==2   4==3   7==4


        col
         1
         2
         7
         1
         4
         7
输出

        col
         1
         2
         4
         1
         3
         4

将其转换为系数,然后再转换为数值:

x <- c(1, 2, 7, 1, 4, 7)
as.numeric(factor(x))
## [1] 1 2 4 1 3 4

x您能解释一下它是如何工作的吗?例如,如果将
用作.numeric(as.character…)
会有什么区别?因子在内部由数字表示,默认赋值正是问题中的赋值,因此在转换为因子后,只需使用
作为.numeric
提取内部表示。使用
作为.character
不起作用。啊,我明白了。谢谢它不起作用