R语言 预测分析

R语言 预测分析

R语言中的预测分析是分析的一个分支,它使用统计操作来分析历史事实,以预测未来的事件。它是数据挖掘和机器学习中的一个常用术语。像时间序列分析、非线性最小平方等方法被用于预测分析。使用预测分析可以帮助许多企业,因为它发现了所收集的数据之间的关系,并基于这种关系,预测模式。因此,允许企业创建预测性智能。

在这篇文章中,我们将讨论预测性分析的过程、需求和应用,并附有示例代码。

预测性分析的过程

预测性分析由以下7个过程组成。

  • 界定项目: 界定项目、范围、目标和结果。
  • 数据收集: 通过数据挖掘收集数据,提供客户互动的完整视图。
  • 数据分析: 这是一个清理、检查、转换和模拟数据的过程。
  • 统计: 这个过程可以验证假设和测试统计模型。
  • 建模: 使用统计学生成预测模型,最优化的模型被用于部署。
  • 部署: 预测模型被部署,以自动产生日常决策结果。
  • 模型监测: 持续监测模型以审查性能,确保预期结果。

预测性分析的必要性

  • 了解客户行为: 预测性分析使用数据挖掘功能,提取客户的属性和行为。它也发现了客户的兴趣,这样企业就可以学习代表那些可以增加购买概率或可能性的产品。
  • 在市场上获得竞争优势: 通过预测性分析,企业或公司可以通过找出自己的弱点和优势,使自己快速成长并在与其他企业的竞争中脱颖而出。
  • 了解增加收入的新机会: 公司可以根据客户的模式创造新的优惠或折扣,提供收入的增加。
  • 找到削弱的领域: 使用这些方法,公司可以通过找出客户不喜欢的公司过去采取的行动,重新获得他们失去的客户。

预测性分析的应用

  • 卫生保健: 预测性分析可以用来确定病人的病史,从而确定风险。
  • 金融建模: 金融建模是另一个方面,预测性分析在发现趋势性股票方面发挥了重要作用,帮助企业进行决策。
  • 客户关系管理: 预测性分析帮助企业根据预测性算法产生的分析来创建营销活动和客户服务。
  • 风险分析: 在预测活动的同时,预测分析可以显示利润的估计,也有助于评估风险。

例子

让我们举一个时间分析系列的例子,这是R编程中预测分析的一种方法。

x <- c(580, 7813, 28266, 59287, 75700,  
       87820, 95314, 126214, 218843, 471497, 
       936851, 1508725, 2072113) 
     
# library required for decimal_date() function 
library(lubridate) 
     
# output to be created as png file 
png(file ="predictiveAnalysis.png") 
     
# creating time series object 
# from date 22 January, 2020 
mts <- ts(x, start = decimal_date(ymd("2020-01-22")), 
                             frequency = 365.25 / 7) 
     
# plotting the graph 
plot(mts, xlab ="Weekly Data of sales", 
          ylab ="Total Revenue", 
          main ="Sales vs Revenue",  
          col.main ="darkgreen") 
     
# saving the file  
dev.off() 
R

输出:

R语言编程中的预测分析

预测数据

现在,根据历史数据预测销售和收入。

x <- c(580, 7813, 28266, 59287, 75700,  
       87820, 95314, 126214, 218843,  
       471497, 936851, 1508725, 2072113) 
     
# library required for decimal_date() function 
library(lubridate) 
     
# library required for forecasting 
library(forecast) 
     
# output to be created as png file 
png(file ="forecastSalesRevenue.png") 
     
# creating time series object 
# from date 22 January, 2020 
mts <- ts(x, start = decimal_date(ymd("2020-01-22")), 
                            frequency = 365.25 / 7) 
     
# forecasting model using arima model 
fit <- auto.arima(mts) 
     
# Next 5 forecasted values 
forecast(fit, 5) 
     
# plotting the graph with next  
# 5 weekly forecasted values 
plot(forecast(fit, 5), xlab ="Weekly Data of Sales", 
ylab ="Total Revenue", 
main ="Sales vs Revenue", col.main ="darkgreen") 
     
# saving the file  
dev.off() 
R

输出:

R语言编程中的预测分析

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册