gpt4 book ai didi

r - sprintf ("%03d", 7) 功能的解释?

转载 作者:行者123 更新时间:2023-12-04 09:58:35 27 4
gpt4 key购买 nike

我正在尝试在 R 中编写函数,其目的是读取多个 .csv 文件。它们被命名为 001.csv、002.csv、... 332.csv。

paste我设法构造了名称 1.csv、2.csv 等,但我在添加前导零时遇到了困难。有一个提示,像 sprintf("%03d", 7) 这样的结构是必需的,但我不知道为什么以及如何工作。

那么有人可以解释以下语句实际上可以做什么吗?

最佳答案

sprintf最初来自 C,所有格式规则也都取自它。见 ?sprintf在 R 或 thisthis引用以详细学习该主题。在这里,我将简要概述其背后的魔力。
"%03d"是一个格式化字符串,它指定如何 7将被打印。

  • d代表 decimal integer (不是 double !),所以它说不会有浮点或类似的东西,只有一个常规整数。
  • 3显示打印的数字有多少位。更准确地说,该号码至少需要 3 位数字:7将是 __7 (用空格代替下划线),但是 1000将保留 1000 ,因为无法仅用 3 位数字写入此数字。
  • 0之前 3表明前导空格应该被零替换。尝试使用 sprintf("%+3d", 7) , sprintf("%-3d", 7)查看其他可能的修饰符(它们称为标志)。

  • 话虽如此, sprintf("%03d", 7) 的输出将是 007 .

    关于r - sprintf ("%03d", 7) 功能的解释?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23718936/

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