Using sklearn StandardScaler on only select columns(仅在选定的列上使用SKLINE标准缩放器)
本文介绍了仅在选定的列上使用SKLINE标准缩放器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个数字数组X,它有3列,如下所示:
array([[ 3791, 2629, 0],
[ 1198760, 113989, 0],
[ 4120665, 0, 1],
...
前两列是连续值,最后一列是BINARY(0,1)。我只想将StandardScaler类应用于前2列。我目前通过以下方式完成此操作:
scaler = StandardScaler()
X_subset = scaler.fit_transform(X[:,[0,1]])
X_last_column = X[:, 2]
X_std = np.concatenate((X_subset, X_last_column[:, np.newaxis]), axis=1)
X_std的输出结果为:
array([[-0.34141308, -0.18316715, 0. ],
[-0.22171671, -0.17606473, 0. ],
[ 0.07096154, -0.18333483, 1. ],
...,
有没有办法一步完成这一切?我想将它作为管道的一部分包括在内,它将缩放前2列,并保留最后一个二进制列的原样。
推荐答案
从SCRICKIT-LEARN版本0.20开始,您可以完全使用函数sklearn.compose.ColumnTransformer来实现此目的。
这篇关于仅在选定的列上使用SKLINE标准缩放器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
沃梦达教程
本文标题为:仅在选定的列上使用SKLINE标准缩放器


猜你喜欢
- 我如何卸载 PyTorch? 2022-01-01
- 计算测试数量的Python单元测试 2022-01-01
- 检查具有纬度和经度的地理点是否在 shapefile 中 2022-01-01
- 我如何透明地重定向一个Python导入? 2022-01-01
- 如何使用PYSPARK从Spark获得批次行 2022-01-01
- ";find_element_by_name(';name';)";和&QOOT;FIND_ELEMENT(BY NAME,';NAME';)";之间有什么区别? 2022-01-01
- 使用公司代理使Python3.x Slack(松弛客户端) 2022-01-01
- CTR 中的 AES 如何用于 Python 和 PyCrypto? 2022-01-01
- YouTube API v3 返回截断的观看记录 2022-01-01
- 使用 Cython 将 Python 链接到共享库 2022-01-01