我想将数据帧写入csv,其中包含数字列和字符列。
有些数字列是整数,我想显示为整数,有些是小数,我需要控制十进制后的位数,显然字符列没有变化
我该怎么做? Eq该数据帧中的特定行是
XYZ 8200 0.306060606 ABC
输出应为
XYZ 8200 0.30 ABC
此致
答案 0 :(得分:5)
这会强制小数点后两位数:
true
如果您不希望具有整数的列也具有这些小数位(例如,在此示例中为列# read in some sample data
xyz <- data.frame(v1 = c("a", "b"),
v2 = c(8200, 8100),
v3 = c(365.2121, 365.2122),
v4 = c(0.3060, 0.3260))
format(xyz, digits=2, nsmall=2)
# v1 v2 v3 v4
#1 a 8200.00 365.21 0.31
#2 b 8100.00 365.21 0.33
),您可以执行类似将v2
拆分为需要格式化的列的操作和其他专栏:
xyz