R:格式化xtable中的数字

yCa*_*ran 3 r digits

我有数据:

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
Run Code Online (Sandbox Code Playgroud)

如果我想创建一个数字amount等于1位小数的表,这样的命令是否有效?

> 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"
Run Code Online (Sandbox Code Playgroud)

谢谢.

Pau*_*yuk 6

如果您只想重新格式化amount列并显示在xtable中,那么您需要为xtable提供数据帧,只需提供一列使其看起来像一个字符向量.

evolution$tab.for <- formatC(evolution$amount,digits=1,format="f")

evolutionxtable<-xtable(subset(evolution, select=c(date, type, tab.for)))

print(evolutionxtable)
Run Code Online (Sandbox Code Playgroud)