如何在 R 中对数据进行归一化处理 [3 种简单方法]

您好,读者! 在本文中,我们将看看3个简单的方法 在R编程中规范数据。

让我们开始吧!!!:)


什么是正常化?

** 功能扩展**是模型之前的一个重要步骤,同时解决数据科学中的预测问题。

标准化技术使我们能够减少变量的规模,从而以积极的方式影响数据的统计分布。

在接下来的部分中,我们将看看执行数据值的正常化的一些技术。


R - Log 转换中的数据正常化

在现实世界的场景中,在处理数据时,我们经常会遇到不均匀分布的数据集,也就是说,它们要么扭曲,要么不遵循值的正常化。

在这种情况下,将值放到适当的尺度的最简单方法是通过单个日志值来扩展它们。

在下面的示例中,我们使用 R 文档中使用的 log() 函数来规模化 data frame中的巨大的数据值。

** 例子:**

1rm(list = ls())
2
3data = c(1200,34567,3456,12,3456,0985,1211)
4summary(data)
5log_scale = log(as.data.frame(data))

出发点:**

1data
21	7.090077
32	10.450655
43	8.147867
54	2.484907
65	8.147867
76	6.892642
87	7.099202

正常化数据与 Min-Max 缩放在 R

正常化值的另一个有效方法是通过Min-Max Scaling方法。

借助 Min-Max Scaling,我们只在 0 到 1 的范围内扩展数据值,从而在一定程度上抑制了数据值的外界值的影响。

在下面的示例中,我们使用了**caret**库来预处理和扩展数据。preProcess()函数使我们能够将值扩展到0至1的范围,使用method = c('range')作为参数。

** 例子:**

1rm(list = ls())
2
3data = c(1200,34567,3456,12,3456,0985,1211)
4summary(data)
5library(caret)
6process <- preProcess(as.data.frame(data), method=c("range"))
7
8norm_scale <- predict(process, as.data.frame(data))

出发点:**

1data
21	0.03437997
32	1.00000000
43	0.09966720
54	0.00000000
65	0.09966720
76	0.02815801
87	0.03469831

3、用R标准扩展来规范数据

在标准扩展中,也称为值标准化,我们将数据值扩展到这样,以便每个变量的总体统计总结具有 平均值为零和 **单位差异值。

scale()函数使我们能够将标准化应用于数据值,因为它将数据的中心和规模化。

1rm(list = ls())
2
3data = c(1200,34567,3456,12,3456,0985,1211)
4summary(data)
5scale_data <- as.data.frame(scale(data))

出发点:**

如下所示,在扩展之前,数据框的平均值为6412。

 1Min. 1st Qu. Median Mean 3rd Qu. Max. 
 2     12 1092 1211 6412 3456 34567	
 3
 4            V1
 51	-0.4175944
 62	2.2556070
 73	-0.2368546
 84	-0.5127711
 95	-0.2368546
106	-0.4348191
117	-0.4167131
12
13           V1         
14 Min.   :-0.5128  
15 1st Qu.:-0.4262  
16 Median :-0.4167  
17 Mean   : 0.0000  
18 3rd Qu.:-0.2369  
19 Max.   : 2.2556

结论

通过此,我们已经到达了这个主题的尽头. 请自由评论下面,如果你遇到任何问题. 有关R编程的更多这样的帖子,与我们保持联系!

直到那时,快乐的学习!!! :)


参考

Published At
Categories with 技术
Tagged with
comments powered by Disqus