On 12-01-25 6:35 AM, Federico Calboli wrote:
Hi All,
I have the following command:
cat(rbind(table(gen$sex, gen$ddn2)[1,],round(table(gen$sex,
gen$ddn2)[1,]/apply(table(gen$sex, gen$ddn2),2,sum) * 100)), sep = c('
(','%)\n'), file = '')
3 (20%)
17 (30%)
15 (31
i.e. it does NOT print the last separator, which is something that bugs me a
bit, given that fact I'm trying to have some copy-paste ready stuff to put in a
table.
I think the documentation for cat is a little ambiguous, but it is
working as documented if I read "If any element of sep contains a
newline character," to mean that the element consists of a newline and
nothing else. I'm not sure if that was the intended reading or not.
How would I overcome this issue? I tried a number of things, all of which have
failed.
I'd use sprintf for that, i.e. something like
count <- c(3, 17, 15)
pct <- c(20, 30, 31)
cat(sprintf("%d (%d%%)\n", count, pct), sep="")
where count and pct are the vectors of values to go into the display.
Duncan Murdoch
______________________________________________
[email protected] mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.