更改R中数据帧列的十进制数字

更改R中数据帧列的十进制数字,r,R,关于显示某些数字的问题已经发布,但是,仅针对单个值或向量,所以我希望有人能帮助我 我有一个包含多列的数据框,并希望在一列中显示所有值,其中包含两个十进制数字(仅此列)。我试过round()和format()和选项(数字),但没有一个列(数字)。我想知道是否有一种方法可以做到这一点,而不需要额外将列转换为向量并再次粘合在一起 非常感谢 下面是一个如何使用随R一起安装的carsdata.frame执行此操作的示例 首先,我将添加一些可变性,以便我们有小数点后的数字: data=cars+runif(

关于显示某些数字的问题已经发布,但是,仅针对单个值或向量,所以我希望有人能帮助我

我有一个包含多列的数据框,并希望在一列中显示所有值,其中包含两个十进制数字(仅此列)。我试过
round()
format()
选项(数字)
,但没有一个列
(数字)
。我想知道是否有一种方法可以做到这一点,而不需要额外将列转换为向量并再次粘合在一起


非常感谢

下面是一个如何使用随R一起安装的
cars
data.frame执行此操作的示例

首先,我将添加一些可变性,以便我们有小数点后的数字:

data=cars+runif(nrow(cars))
data[,'dist']=round(data[,'dist'],2)
然后仅将一列四舍五入(在本例中,
dist
列四舍五入至小数点后2位):

如果您的数据包含整数,则可以使用以下方法保证所有值都有2位小数:

cars[,'dist']=format(round(cars[,'dist'],2),nsmall=2)

您能否显示您尝试过的内容(代码)?不幸的是,没有,在它不起作用时将其全部删除..:(感谢CephBirk,我可以看到它背后的逻辑,不幸的是它不起作用。问题是我实际上是将4位数字(例如8000)除以100得到80.00(这是十进制时间度量),所以不知何故R不想显示它。尝试用Excel更改数字,但没有输入到R中,当在列顶部添加一个带两位小数(例如0.01)的实际数字时,R将其余显示为80.00,但一旦我删除了0.01,R就会跳回80。是否知道在第二个数字后面加一个点的方法?