If I enter
print(cat(""))
I get
NULL
I want to use cat()
to print out the progress of an R script, but I don't understand why it is returning NULL
at the end of all of my concatenated strings, and more importantly, how to get it to stop?
All your answers are in the documentation for ?cat
. The portions that answer your specific question are:
Arguments:
fill: a logical or (positive) numeric controlling how the output is broken into successive lines. If ‘FALSE’ (default), only newlines created explicitly by ‘"\n"’ are printed. Otherwise, the output is broken into lines with print width equal to the option ‘width’ if ‘fill’ is ‘TRUE’, or the value of ‘fill’ if this is numeric. Non-positive ‘fill’ values are ignored, with a warning.
... and ...
Value:
None (invisible ‘NULL’).
So you can't stop print(cat(...))
from returning NULL
because that's what cat
returns. And you need to explicitly add newlines like cat("foo\n")
.