覆盖粘贴中的数字规则



我正在尝试使用paste()创建一个用于保存文件的名称;此名称将部分由用于创建要保存的数据框的日期序列组成。

所以,我希望输出是一串"./Calculations (Raw)/ 1:2 - 3.csv"

第一部分是指路径,该路径本身工作,并.csv附加到附加的文件扩展名。

Road <- 1
Dates <- 1:2
paste("./Calculations (Raw)/", Dates , "-" , Road, ".csv")

问题是,该代码生成两个字符串,破坏了write.csv

如何覆盖编号规则?

paste被矢量化。 您需要将dates向量collapse长度为 1,您可以使用 collapse 参数来paste

paste("./Calculations (Raw)/", paste(Dates, collapse="-") , "-" , Road, ".csv")
# [1] "./Calculations (Raw)/ 1-2 - 1 .csv"

如果你不这样做,paste会将所有向量扩展到最长向量的长度(在本例中为 Dates ),然后才paste它们,这就是为什么你最终会得到多个值而不是一个。

顺便说一句,您可能还希望将sep参数更改为paste,这样文件名中就不会有空格。

如果要

按原样打印1:2,请创建一个字符串,即"1:2" .

Road <- 1
Dates <- "1:2"
paste("./Calculations (Raw)/", Dates , "-" , Road, ".csv")
# [1] "./Calculations (Raw)/ 1:2 - 1 .csv"

最新更新