python - 如何加快python中的缩放过程?
问题描述
我有一个大型文本数据集,我正在使用MinMaxScaler
来转换一个特征。代码运行良好,但需要 3 分钟以上,我想减少此过程消耗的时间。是否有任何建议可以加快此过程或替代方法以使这种转换更快?
df = cleanData('data.csv')
scaler = MinMaxScaler(feature_range=(0, 5))
scaler.fit(pd.DataFrame(df.loc[:,'year']))
df.loc[:,'year'] = scaler.transform(pd.DataFrame(df.loc[:,'year']))
解决方案
你可以尝试这样做dask-ml
:
import dask.dataframe as dd
from dask_ml.preprocessing import MinMaxScaler
# or read directly from csv with ddf = dd.read_csv('data.csv')
ddf = dd.from_pandas(df, npartitions=10)
scaler = MinMaxScaler(feature_range=(0, 5))
scaler.fit(ddf['year'])
ddf['year'] = scaler.transform(ddf['year'])
中还有其他可用的预处理工具dask_ml
,请参阅https://ml.dask.org/modules/generated/dask_ml.preprocessing.MinMaxScaler.html?highlight=minmaxscaler
推荐阅读
- machine-learning - 随机森林 - 最大特征
- indexing - 具有索引 XMP Dublin Core 元数据的可搜索视频库
- r - R -- 总是在 R 中抓取上一年的最后一天
- javascript - 我可以为具有已知数量元素的 Map/Set 预先分配内存吗?
- javascript - 为什么 cancelBubble 在 Google Chrome 中有效?
- react-native - 键盘启动时如何隐藏组件?
- php - belongsTo–hasOne 关系返回 null
- nativescript - NativeScript 应用程序给出“警告:陈旧文件 [....appname-Prefix.pch.gch] 位于允许的根路径之外”
- c - 使用循环查找最大数字
- kotlin - 如何使用 Chopper 发送文件?