我正在尝试使用paste()
创建名称以保存文件;此名称将部分由用于创建要保存的数据框的日期序列组成。
所以,我希望输出为"./Calculations (Raw)/ 1:2 - 3.csv"
的字符串。
第一部分是指路径,它自己工作,.csv
是附加的文件扩展名。
Road <- 1
Dates <- 1:2
paste("./Calculations (Raw)/", Dates , "-" , Road, ".csv")
问题是,该代码生成了两个字符串,打破了write.csv
。
如何覆盖数字序列?
答案 0 :(得分:1)
paste
是矢量化的。您需要collapse
将dates
向量设置为长度1,您可以使用collapse
paste
参数进行paste("./Calculations (Raw)/", paste(Dates, collapse="-") , "-" , Road, ".csv")
# [1] "./Calculations (Raw)/ 1-2 - 1 .csv"
:
paste
如果你不这样做,Dates
会将所有向量扩展到最长向量的长度(在本例中为paste
),然后只有sep
个,这就是为什么你最终得到多个价值而不只是一个。
顺便说一下,您可能还想将paste
参数更改为{{1}},这样就不会在文件名中留下空格。
答案 1 :(得分:0)
如果您想按原样打印1:2
,请创建一个字符串,即"1:2"
。
Road <- 1
Dates <- "1:2"
paste("./Calculations (Raw)/", Dates , "-" , Road, ".csv")
# [1] "./Calculations (Raw)/ 1:2 - 1 .csv"