Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在R中使用sprintf函数的帮助_R_Printf - Fatal编程技术网

在R中使用sprintf函数的帮助

在R中使用sprintf函数的帮助,r,printf,R,Printf,我有以下R代码: df <- xmlToDataFrame(/Users/usr/Desktop/shares.xml) df$timeStamp <- strptime(as.character(df$XTimeStamp), "%H:%M:%OS") df$SharePrice <- as.numeric(as.character(df$SharePrice)) sapply(df, class) options("digits.secs"=3) diff <- di

我有以下R代码:

df <- xmlToDataFrame(/Users/usr/Desktop/shares.xml)
df$timeStamp <- strptime(as.character(df$XTimeStamp), "%H:%M:%OS")
df$SharePrice <- as.numeric(as.character(df$SharePrice))
sapply(df, class)
options("digits.secs"=3)
diff <- diff(df$SharePrice)
diff
sink (file="c:/xampp/htdocs/data.xml", type="output",split=FALSE)
cat("<graph caption=\"Share Price Data Wave\" subcaption=\"For Company's Name\"    xAxisName=\"Time\" yAxisMinValue=\"0\" yAxisName=\"Price\" decimalPrecision=\"5\" formatNumberScale=\"0\" numberPrefix=\"\" showNames=\"1\" showValues=\"0\" showAlternateHGridColor=\"1\" AlternateHGridColor=\"ff5904\" divLineColor=\"ff5904\" divLineAlpha=\"20\" alternateHGridAlpha=\"5\">\n")
cat(sprintf("    <set name=\"%s\" value=\"%f\" hoverText = \"The difference from last value = %d\" ></set>\n", df$XTimeStamp, df$SharePrice, diff))

df要么去掉
df$XTimeStamp
df$SharePrice
的第一个元素,要么添加
NA
作为
diff
的第一个元素

cat(sprintf("    <set name=\"%s\" value=\"%f\" hoverText = \"The difference from last value = %d\" ></set>\n", df$XTimeStamp[-1], df$SharePrice[-1], diff))
cat(sprintf(“\n”,df$XTimeStamp[-1],df$SharePrice[-1],diff))

cat(sprintf(“\n”,df$XTimeStamp,df$SharePrice,c(NA,diff)))

此外,如果您正在进行大量此类模板填充,请查看CRAN上的“brew”包-与您最初的问题无关,但每当我看到一长串难看的“cat”函数调用时,我就不得不提及它。

diff(a)总是比a少一个元素。因此,方法是在第一个元素中添加NA。
cat(sprintf("    <set name=\"%s\" value=\"%f\" hoverText = \"The difference from last value = %d\" ></set>\n", df$XTimeStamp[-1], df$SharePrice[-1], diff))
cat(sprintf("    <set name=\"%s\" value=\"%f\" hoverText = \"The difference from last value = %d\" ></set>\n", df$XTimeStamp, df$SharePrice, c(NA,diff)))