【发布时间】:2017-10-19 06:59:26
【问题描述】:
我最近从 R 中的常见数据框操作转移到了 tidyverse。但是我遇到了关于使用scale()function 缩放列的问题。
我的数据由列组成,其中一些是数字特征,一些是分类特征。最后一列也是数据的 y 值。所以我想缩放所有数字列,但不是最后一列。
使用select()function,我可以编写很短的代码行,并选择添加ends_with("...") 参数时需要缩放的所有数字列。但我不能真正利用它来缩放。在那里我必须使用transmute(feature1=scale(feature1),feature2=scale(feature2)...)并单独命名每个功能。这工作正常,但会使代码膨胀。
所以我的问题是:
是否有一种智能的解决方案来逐列操作,而无需使用 转化?
我想像这样:
transmute(ends_with("...")=scale(ends_with("..."),featureX,featureZ)
(很清楚这是行不通的)
在此先感谢
【问题讨论】: