如何将数字组合成R中的字符串?

时间:2012-04-19 20:52:55

标签: r

我的数据框的数字类似于:

df$X1    df$X2

.9     1.442

我如何使用此数据框中的元素为置信区间创建标签,这些格式将是格式良好的字符串:

(0.90, 1.42)

我迷失在pasteas.characterc()之间,似乎没有任何作用:/

2 个答案:

答案 0 :(得分:6)

如下:

paste("(",df$X1,",",df$X2,")",sep="")

在您的示例中,您可能希望对数字进行舍入,但舍入不正确。你想在小数点后面有一定数量的数字吗?

此外,“1”和“2”作为data.frame中的名称不赞成 - 请参阅?make.names

修改

要在这种情况下进行舍入,我喜欢使用formatC()

paste("(", formatC(df$X1, digits = 2, format = "f"), ",",
  formatC(df$X2, digits = 2, format = "f"), ")", sep = "")

但是,如果值小于.005,请注意它们最终会为0.00

答案 1 :(得分:4)

+1 @BenBarnes,我只想添加1个小点。除了(或代替)formatC()之外,您还可以使用round(df$X1, digits=2)。您可能会发现roundformatC()更简单。此外,这不会对输出状态产生任何影响,因为它是模式中的字符。