gpt4 book ai didi

R代码生成带前缀的唯一ID?

转载 作者:行者123 更新时间:2023-12-04 11:36:36 25 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





How to add leading zeros?

(8 个回答)


5年前关闭。




我有一个名为“pipel”的表,其中包含 10,000 多行。我想添加一个 ID 列来为每一行分配一个唯一的 ID。唯一 ID 的长度必须为 30 位,并以“AKM_CC_Test_”开头。我使用下面的代码作为起点,但不确定如何格式化它以添加前缀并使其长度为 30 位。

id <- rownames(pipel)
pipel <- cbind(id=id, pipel)

例如,第一行 ID 需要看起来像这样 AKM_CC_Test_000000000000000001

最佳答案

您可以使用 sprintf() .这将创建一个以 "AKM_CC_Test_" 开头的 30 个字符的字符串。并以 1:nrow(pipel) 的序列结尾带前导零。

x <- "AKM_CC_Test_"
sprintf("%s%0*d", x, 30 - nchar(x), 1:nrow(pipel))
  • %s Blade x进入字符串
  • %0*d添加 1:nrow(pipel)*前导零,在 x 之后. *用于插入30 - nchar(x)转换为格式(我以编程方式完成;如果需要,您可以在那里插入 18)

  • 一个简单的长度为 5 ( 1:5 ) 向量的例子是
    x <- "AKM_CC_Test_"
    sprintf("%s%0*d", x, 30 - nchar(x), 1:5)
    # [1] "AKM_CC_Test_000000000000000001" "AKM_CC_Test_000000000000000002"
    # [3] "AKM_CC_Test_000000000000000003" "AKM_CC_Test_000000000000000004"
    # [5] "AKM_CC_Test_000000000000000005"

    关于R代码生成带前缀的唯一ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39947910/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com