如何在R数据框中对某些列为类别型列的数值列进行舍入?
要在R数据框中对某些列为类别型列的数值列进行舍入,我们可以按照以下步骤操作:
首先,创建一个数据框。
然后,使用plyr包中的numcolwise函数对数值列中的每个值进行舍入,即使某些列是类别型的。
示例
创建数据框
让我们创建一个如下所示的数据框:
Level<-sample(c("low","medium","high"),25,replace=TRUE) Group<-sample(c("first","second"),25,replace=TRUE) DV1<-rnorm(25) DV2<-rnorm(25) df<-data.frame(Level,Group,DV1,DV2) df
输出
执行上述脚本后,将生成以下输出(由于随机性,此输出可能因您的系统而异):
Level Group DV1 DV2 1 low first 0.3113086 -0.560410192 2 high second 1.2462502 -0.839353354 3 high second -0.1069003 0.876603377 4 low second 0.7132453 0.444083125 5 high second -0.9718300 0.719396980 6 medium first -1.1686395 0.692503766 7 high first 0.2996904 1.549099366 8 medium first 0.1843041 -0.623725508 9 medium first -0.2806531 0.265089090 10 medium second -0.1707617 0.783538873 11 medium second -0.3580571 0.367009599 12 low second -0.7904927 -0.363554432 13 high second 1.2020259 -0.990149369 14 medium first 0.1223149 -0.096059087 15 high second -0.2941084 -0.584607516 16 medium first 0.8305360 -0.521546585 17 high first 1.3346562 -0.234318326 18 medium first -0.6467870 -0.002709633 19 medium second 0.2400778 -0.969352846 20 low first 0.4702012 0.168694928 21 medium first -0.5836102 0.145309996 22 low second 1.0728229 0.641423060 23 low first -0.2079424 -0.603290667 24 medium first 0.6148493 -0.919263451 25 high second -0.1642258 0.065443836
对某些列为类别型的列中的每个值进行舍入
使用plyr包中的numcolwise函数对数据框df中数值列的每个值进行舍入,即使某些列为类别型。
Level<-sample(c("low","medium","high"),25,replace=TRUE) Group<-sample(c("first","second"),25,replace=TRUE) DV1<-rnorm(25) DV2<-rnorm(25) df<-data.frame(Level,Group,DV1,DV2) library(plyr) numcolwise(round)(df)
输出
DV1 DV2 1 0 -1 2 1 -1 3 0 1 4 1 0 5 -1 1 6 -1 1 7 0 2 8 0 -1 9 0 0 10 0 1 11 0 0 12 -1 0 13 1 -1 14 0 0 15 0 -1 16 1 -1 17 1 0 18 -1 0 19 0 -1 20 0 0 21 -1 0 22 1 1 23 0 -1 24 1 -1 25 0 0
广告