R 将前导零添加到列表中,并将修改后的值分配回数据框中的变量

R 将前导零添加到列表中,并将修改后的值分配回数据框中的变量,r,leading-zero,R,Leading Zero,我使用的数据集是一个.csv文件,它有13列,标题如下(粗体),共302行:id:1,2,…,302),源代码::AAA,BBB,CCC.,日期,天,月,年,时间,小时,分钟,秒,纬度,经度,铭文:NA,1或0 我希望ID(1,2,3,…,302)列有3位数字,必要时使用有效的零(001,002,…,010,…,302) 这就是我所做的: data对此有点猜测,但听起来您没有将修改后的值赋回到数据帧中的变量 dd <- data.frame(id=c(1,2,3,10)) dd$id &l

我使用的数据集是一个.csv文件,它有13列,标题如下(粗体),共302行:id:1,2,…,302),源代码::AAA,BBB,CCC.,日期,天,月,年,时间,小时,分钟,秒,纬度,经度,铭文:NA,1或0

我希望ID(1,2,3,…,302)列有3位数字,必要时使用有效的零(001,002,…,010,…,302)

这就是我所做的:


data对此有点猜测,但听起来您没有将修改后的值赋回到数据帧中的变量

dd <- data.frame(id=c(1,2,3,10))
dd$id <- sprintf("%03d", dd$id)
str(dd)
## 'data.frame':    4 obs. of  1 variable:
## $ id: chr  "001" "002" "003" "010"

dd您是否有
列表
列或向量。你能用
sprintf(“%03d”,数据$id)显示问题吗?
。如果您有一个字符列,那么使用
sprintf(“%03d”,as.numeric(data$id))
您在做什么
data$id@akrun我使用了
sprintf(“%03d”,as.numeric(data$id))
,它在控制台中显示了转换的id列表(就像我使用
formatC(data$id,width=3,format=“d”,flag=“0”)
sprintf>时一样(“%03d”,data$id)
),但在使用
str(data)检查它是否对数据有影响时
,原始ID出来了!我如何才能将更改的ID保存在数据中?@BenBolker我在使用函数之前将ID更改为字符..并且在应用函数之前尝试将其更改为数字。问题是更改(即:使ID具有前导零,共3位数字)当我检查数据时没有显示…(通过运行
data
str(data)
)。我需要找到在数据中显示更改的方法。我说得通吗?谢谢大家的耐心!我们真的,真的需要一个,这样我们可以看到你在做什么。这可以像
dd一样简单,这解决了我的问题!!感谢你的帮助和耐心!!如果这解决了你的问题,我们鼓励你点击检查按钮我想接受它。。。