前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >数据分析之最优化

数据分析之最优化

作者头像
数据处理与分析
发布2019-07-31 16:51:26
6160
发布2019-07-31 16:51:26
举报
为啥要进行数据分析

在上次的fme用户大会会后,我写了一点感想。在很早之前,我就觉得单纯的做数据处理是没什么前途的,所以要做分析,并且分析中有处理,处理中有分析。仅仅在处理中做一些分析,是不够的,所以我又找了一些书来读。接下来,我将按照书中的例子,做一点分享。

线性规划,最大值

其实这就是个线性规划问题,书中进行了一系列的需求分析,通过科学的方法,将问题转化成了经典的线性规划问题

书中使用了excel的函数来进行线性规划,如下图所示:

但这样就够了? NO! Excel,交互式太强,不方便部署或是集成到其他平台中! 作为一个有追求的技术人,当然要有更高端一点的解决方式! 那么,要使用什么方式来解决问题呢? FME据我了解,好像没有类似的工具,或者实现起来太复杂,pass! 还是用我万能的Python吧! 说干就干,直接上源码!

代码语言:javascript
复制
'''
Created on 2019年4月14日

@author: uYaoQi
'''

from scipy import optimize as opt
import numpy as np

# 数据分析生产橡皮鸭与橡皮鱼求取最优解的算法
# 这里面都是限制条件
# 最大利润:max(利润) = 5*(鸭)+4*(鱼)
# 限制条件之橡胶:100*(鸭)+125*(鱼)<=50000
# 根据报表分析出市场上销售橡皮鸭与橡皮鱼的关系,进而得出以下的限制函数
# 限制条件之市场:鸭<=150
# 限制条件之市场:鱼<=50

c = np.array([5,4])
a = np.array([[100,125],[1,0],[0,1]])
b = np.array([50000,150,50])

if __name__ == '__main__':
    res = opt.linprog(-c,a,b)
    print(res)

output:
     con: array([], dtype=float64)
     fun: -950.0
 message: 'Optimization terminated successfully.'
     nit: 3
   slack: array([28750.,     0.,     0.])
  status: 0
 success: True
       x: array([150.,  50.])

用Python来做线性规划,就是这么简单!

其它的一些分析

这篇推送,来自于《深入浅出数据分析》,是HeadFirst系列书籍,感兴趣的可以网上找一找,或者联系我索取。 最近除了这个分析,我也基于Dijkstra算法,做了一些路径规划方面的分析。 分析需要算法,需要模型,而模型,就在平常的生活中慢慢积累! 现在,我看公众号,只要是有数据分析相关的,都会记下来!

others

生活中处处有分析!比如我早上起床,如果昨天睡觉的时候决定了今天早上不洗头,那就可以多睡一会,我觉得这是分析;我下午要去打羽毛球、去运动,午饭/晚饭就可以多吃点,这也是分析;在生活中,处处都是分析。只是有些分析,有合适的模型,可以量化,有些,没那么容易量化!

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-05-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 数据处理与分析 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 为啥要进行数据分析
  • 线性规划,最大值
  • 其它的一些分析
相关产品与服务
腾讯云 BI
腾讯云 BI(Business Intelligence,BI)提供从数据源接入、数据建模到数据可视化分析全流程的BI能力,帮助经营者快速获取决策数据依据。系统采用敏捷自助式设计,使用者仅需通过简单拖拽即可完成原本复杂的报表开发过程,并支持报表的分享、推送等企业协作场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档