r - 我想创建一个数字来替换 R 中的字符

标签 r dataframe

我有一个 df1:

ID    Score
XF7    4
XF4    6
XF10   5
DE10   3
XF4    1
DE10   6
DE11   2
R3     8
PPR16  2
DE11   10

我想将 ID 替换为 ID 唯一的数字。例如,XF7 可能是“1”,而所有 XF4 都可能是“2”。

ID    Score  NumID
XF7    4     1
XF4    6     2
XF10   5     3
DE10   3     4
XF4    1     2
DE10   6     4
DE11   2     5
R3     8     6
PPR16  2     7
DE11   10    5

最佳答案

我们可以使用匹配

df1$NumID <-  with(df1, match(ID, unique(ID)))

-输出

> df1
      ID Score NumID
1    XF7     4     1
2    XF4     6     2
3   XF10     5     3
4   DE10     3     4
5    XF4     1     2
6   DE10     6     4
7   DE11     2     5
8     R3     8     6
9  PPR16     2     7
10  DE11    10     5

关于r - 我想创建一个数字来替换 R 中的字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72104783/

相关文章:

r - 将 data.frame 列格式从字符转换为因子

反向过滤器/子集数据框

r - 数据必须是矢量类型,是 'NULL' R

python - 在数据框的不同轴上绘制多个图形

dataframe - 如何在 Spark Dataframe 中显示完整的列内容?

python - 计算多列中的值

python - 基于索引,如何用之前的上述值填充 NaN 值?

减少 ggplot2 中条形图组之间的空间

r - 是否可以使用自定义图片作为条形图中的条形?

r - 表达与调用