I have the data:
transaction <- c(1,2,3);
date <- c("2010-01-31","2010-02-28","2010-03-31");
type <- c("debit", "debit", "credit");
amount <- c(-500, -1000.97, 12500.81);
oldbalance <- c(5000, 4500, 17000.81)
evolution <- data.frame(transaction, date, type, amount, oldbalance, row.names=transaction, stringsAsFactors=FALSE);
evolution$date <- as.Date(evolution$date, "%Y-%m-%d");
evolution <- transform(evolution, newbalance = oldbalance + amount);
evolution
If I want to create a table with the digits in amount
just equal to 1 decimal place, does such a command work?
> tab.for <- formatC(evolution$amount,digits=1,format="f")
> tab.lat <- xtable(tab.for)
Error in UseMethod("xtable") :
no applicable method for 'xtable' applied to an object of class "character"
Thanks.
If you just want to reformat the amount column and present in an xtable, then you need to supply xtable with a dataframe, just supplying one column makes it looks like a character vector.
evolution$tab.for <- formatC(evolution$amount,digits=1,format="f")
evolutionxtable<-xtable(subset(evolution, select=c(date, type, tab.for)))
print(evolutionxtable)
来源:https://stackoverflow.com/questions/8652731/r-formatting-the-digits-in-xtable