前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >盘一盘 Python 系列 - Cufflinks (下)

盘一盘 Python 系列 - Cufflinks (下)

作者头像
用户5753894
发布于 2021-02-05 06:43:58
发布于 2021-02-05 06:43:58
4.9K00
代码可运行
举报
文章被收录于专栏:王的机器王的机器
运行总次数:0
代码可运行

本文含 8890 字,37 图表截屏

建议阅读 46 分钟

0

引言

本文是 Python 系列的 Cufflinks 补充篇。整套 Python 盘一盘系列目录如下:

Cufflinks 对于做数据分析的同学简直就是神器,可以让他们把注意力放在分析过程上,同时又能产出漂亮的可视图。

Cufflinks 可以不严谨的分解成 DataFrame、Figure 和 iplot,如下图所示:

其中

  • DataFrame:代表 pandas 的数据帧
  • Figure:代表可绘制图形,比如 bar、box、histogram 等等
  • iplot:代表绘制方法,其中有很多参数可进行配置,调节符合适当风格的可视图

由此可知,Cufflinks 直接在 DataFrame 上画图,而 DataFrame 是最基本的数据格式,因此很方便;Figure 只是设定图形,而 iplot 才真正的把图给画出来。

本贴结构如下,第一章解释 iplot() 函数的参数含义,当你明晰所有参数该怎么用时,你会发现用 Cufflinks 画图真的再简单不过了。第二章就“随意”画些图看看效果 (如以下视频所示)。

首先引入 Cufflinks 包,并设置离线模式画图。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import cufflinks as cf
cf.set_config_file(offline=True)

1

iplot 函数 API

用一个词形容 Cufflinks 的 API 就是优雅,所有绘图实现都写在一个函数 iplot() 里。查看其函数签名可用以下语句:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
df = pd.DataFrame()
help(df.iplot)

绘图函数 iplot()是一招鲜吃遍天,常用参数的解释如下。尽管内容枯燥,建议一定认真读完,细节在魔鬼,读得越细就能实现越精巧的图。

kind:字符串格式,用于设置图的种类,具体值包括

散点图 scatter、柱状图 bar、箱形图 box、差异图 spread、比率图 ratio、热力图 heatmap、平面图 surface、直方图 histogram、气泡图 bubble、三维气泡图 bubble3d、三维散点图 scatter3d、地理散点图 scattergeo、K线图 ohlc、蜡烛图 candle、饼状图 pie、地图 choroplet


title, xTitle, yTitle, zTitle:字符串格式,用于设置图表标题、x 轴、y 轴和 z 轴标题 (只适用 3D 图)

theme:字符串格式,用于设置主题风格,可用 cf.getThemes() 查看,具体值包括

ggplot, pearl, solar, space, white, polar, henanigans

colors:字典、列表或字符串格式,用于设置颜色

  • 字典:{column:color} 按数据帧中的列标签设置颜色
  • 列表:[color] 对每条轨迹按顺序的设置颜色
  • 字符串:具体颜色的英文名称,适用于所有轨迹

colorscale:字符串格式,用于设置色阶,具体名称可用 cf.colors.scale() 查看,如下图所示。在颜色字符串前加 – 前缀可以反转色阶。举例 “accent” 和 “-accent” 的色阶顺序正好相反。

fill:布尔格式,用于填充轨迹 (trace) 和坐标轴之间的空白。

width:字典、列表或整数格式,用于设置轨迹宽度

  • 字典:{column:value} 按数据帧中的列标签设置宽度
  • 列表:[value] 对每条轨迹按顺序的设置宽度
  • 整数:具体数值,适用于所有轨迹

dash:字典、列表或字符串格式,用于设置轨迹风格

  • 字典:{column:value} 按数据帧中的列标签设置风格
  • 列表:[value] 对每条轨迹按顺序的设置风格
  • 字符串:具体风格的名称,适用于所有轨迹

具体选项有实线 solid、虚线 dash、虚点 dashdot、点 dot


mode:字典、列表或字符串格式,用于设置轨迹模式

  • 字典:{column:value} 按数据帧中的列标签设置模式
  • 列表:[value] 对每条轨迹按顺序的设置模式
  • 字符串:具体模式的名称,适用于所有轨迹

具体选项有折线 lines、散点 markers、折线加散点 lines+markers、折线加文字lines+text、散点加文字 markers+text、折线加散点和文字 lines+markers+text


interpolation:字典、列表或字符串格式,用于设置插值方法

  • 字典:{column:value} 按数据帧中的列标签设置插值方法
  • 列表:[value] 对每条轨迹按顺序的设置插值方法
  • 字符串:具体插值方法的名称,适用于所有轨迹

具体选项有线性 linear、三次样条 spline、 阶梯 hv 或 vh 或 vhv 或 hvh。


symbol:字典、列表或字符串格式,用于设置标记类型,仅当 mode 含 marker 才适用

  • 字典:{column:value} 按数据帧中的列标签设置标记类型
  • 列表:[value] 对每条轨迹按顺序的设置标记类型
  • 字符串:具体标记类型的名称,适用于所有轨迹

具体选项有圆形 circle、圆形加点 circle-dot、菱形 diamond、方形 square 等。


size:字符串或整数格式,用于设置标记大小,仅当 mode 含 marker 才适用。

barmode:字符串格式,用于设置柱状类型,仅当 kind = bar 才适用,具体选项有分组 group、堆叠 stack、重叠 overlay。

sortbars:布尔格式,用于递减排列柱状,仅当 kind = bar 才适用。

bargap:浮点数格式,值在0和 1 之间,用于设置柱状的间隔,仅当 kind = bar 或 historgram 才适用。

bargroupgap:浮点数格式,值在 0和 1 之间,用于设置柱状分组的间隔,仅当 kind = bar 或 historgram 才适用。

bins:整数或元组格式,仅当 kind = historgram 才适用

  • 整数:设置桶个数
  • 元组:(start, end, size) 设置起始点、终止点、和桶的大小

histnorm:字符串格式,仅当 kind = historgram 才适用。具体选项有

  • 频率 frequency (桶高等于计数)
  • 百分比 percent (桶高等于每桶中计数占总数的比例)
  • 概率 probability (桶高等于概率,桶宽为 1)
  • 密度 density (桶高等于计数除以桶宽,使得桶面积加起来等于桶的总数)
  • 概率密度 probability density (桶高等于概率除以桶宽,使得桶面积加起来等于 1)

histfunc:字符串格式,用于设置桶函数,仅当 kind = historgram 才适用。具体选项有计数函数 count、求和函数 sum、平均函数 avg、最小值函数 min、最大值函数 max。

orientation:字符串格式,用于设置形状的排放方式,h 代表水平 v 代表竖直,仅当 kind = bar 或 histogram 或 box 才适用

boxpoints:布尔或字符串格式,用于在箱形图中显示数据,仅当 kind = box 才适用,具体选项有离群值 outliers、全部 all、可疑离群值 suspectedoutliers、不显示False。

annotations:字典格式 {x_point: text},用于在点 x_point 上标注 text。

keys:列表格式,指定数据帧中的一组列标签用于排序。

bestfit:布尔或列表格式,用于拟合数据。

  • 布尔:True 对所有列的数据都做拟合
  • 列表:[columns] 对列表中包含列的数据做拟合

bestfit_colors:字典或列表格式,用于设定数据拟合线的颜色。

  • 字典:{column:color} 按数据帧中的列标签设置颜色
  • 列表:[color] 对每条轨迹按顺序的设置颜色

categories:字符串格式,数据帧中用于区分类别的列标签

x:字符串格式,数据帧中用于 x 轴变量的列标签

y:字符串格式,数据帧中用于 y 轴变量的列标签

z:字符串格式,数据帧中用于 z 轴变量的列标签 (只适用 3D 图)

text:字符串格式,数据帧用于显示文字的列标签

gridcolor:字符串格式,用于设定网格颜色

zerolinecolor:字符串格式,用于设定零线颜色

labels:字符串格式,将数据帧中的里列标签设为饼状图每块的标签,仅当 kind = pie 才适用。

values:字符串格式,将数据帧中的列数据的值设为饼状图每块的面积,仅当 kind = pie 才适用。

secondary_y:字符串格式,数据帧中用于第二个 y 轴变量的列标签

secondary_y_title:字符串格式,用于设置第二个 y 轴标题

subplots:布尔格式,如果 True 则画子图

shape:元组格式 (rows, cols),仅当 subplots= True 才适用,

error_x:整数或浮点数格式,用于设置 x 轴变量的误差值

error_y:整数或浮点数格式,用于设置 y 轴变量的误差值

error_type:字符串格式,用于设定误差条形的类型,具体选项有 data、constant、percent、sqrt、continuous、continuous_percent。

最后将图存成不同数据格式的布尔型参数:

  • asFrame:如果 True 则将图的成分存成序列
  • asDate:如果 True 则将时间存成 DatetimeIndex
  • asFigure:如果 True 则将图存成 Plotly 图格式
  • asImage:如果 True 则将图存成 PNG 格式
  • asPlot:如果 True 则将图在浏览器打开
  • asUrl:如果 True 则将返回网址 (online 模式) 或返回本地路径 (offline 模式)

其他参数 **kwargs 可以让图更个性化,比如 shape,subplots 等,这些在下节用具体例子来展示,读者一看就知道这些参数的效用了。

认真读参数含义!认真读参数含义!认真读参数含义!读完你就发现“诶,我怎么会用 Cufflinks 画各式各样的图了”。

2

用 iplot 画图

数据

首先用 YahooFinancials API 来下载四个股票的 2020 年到 2021年的最新数据,安装该 API 用一行代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
pip install yahoofinancials

数据的描述如下

  • 起始日:2020-01-01
  • 终止日:2021-01-26
  • 四只股票:FUTU、NIO、FUBO,DAO

下面代码就是从 API 获取数据:

该 API 返回结果 stock_daily 是「字典」格式,样子非常丑陋,将上面的「原始数据」转换成 DataFrame,代码如下:

第 3 行完全是为了 YahooFinancial 里面的输入格式准备的。如果 Asset 是加密货币,直接用其股票代码;如果 Asset 是汇率,一般参数写成 EURUSD 或 USDJPY

  • 如果是 EURUSD,转换成 EURUSD=X
  • 如果是 USDJPY,转换成 JPY=X

第 6 行定义好开盘价、收盘价、最低价和最高价的标签。

第 7 行获取出一个「字典」格式的数据。

第 8, 9 行用列表解析式 (list comprehension) 将日期和价格获取出来。

第 11 到 13 行定义一个 DataFrame

  • 值为第 9 行得到的 price 列表
  • 行标签为第 8 行得到的 index 列表
  • 列标签为第 6 行定义好的 columns 列表

处理过后,将每个股票的收盘价合并成一个数据帧,打印其首尾三行得到:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
df = pd.DataFrame()
for code in stock_code:
    data = data_converter( stock_daily, code, 'EQ' )
    df[code] = data['close']

df.index = pd.to_datetime(df.index)
df.head(3).append(df.tail(3))

接下来画图,代码简单到已经不需要额外文字解释了,对比着参数设置一下子就能找出图中相对应特征。

可视图

四只股票价格折线图,在 x 轴、y 轴和图上列出标题。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
df.iplot( kind='line', 
          xTitle='日期', 
          yTitle='价格', 
          title='四只股票表现' )

由于股票价格量纲不同,有时候多只股票放在一起比较效果很差,比如你加入 AMZN,大概 3200 多,这样那些价格只有几十的股票折线几乎像一条水平线。下面做了标准化,将起始日的价格设为 100,再进行比较。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
df.div(df.iloc[0,:]).mul(100).iplot( kind='line', 
                                     xTitle='日期',
                                     yTitle='标准化后价格',
                                     title='四只股票表现' )

画 FUTU 和 NIO 日收益率的散点图。注意参数 color 和 symbol 的用法 (以字典个格式传入参数值)。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
df[['FUTU','NIO']].pct_change().iplot(kind='scatter', mode='markers', size=8,
                                      color={'FUTU':'pink', 'NIO':'red'},
                                      symbol={'FUTU':'diamond', 'NIO':'circle'},
                                      xTitle='FUTU', yTitle='NIO', title='日收益率散点图')

画 FUTU 和 NIO 价格的差异图。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
df[['FUBO','NIO']].iplot(kind='spread',
                         xTitle='日期', 
                         yTitle='价格', 
                         title='FUBO 和 NIO 价格差异图')

画 FUTU 和 NIO 价格的比率图。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
df[['FUBO','NIO']].iplot(kind='ratio', 
                         xTitle='日期', 
                         yTitle='价格', 
                         title='FUBO 和 NIO 价格比率图')

画四只股票日收益率的分组直方图。注意参数 barmode 和 histnorm 的用法。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
df.pct_change().iplot(kind='histogram', 
                      barmode='group', histnorm='probability', 
                      xTitle='日收益率', yTitle='概率', title='四只股票日收益率分组直方图')

画四只股票日收益率的堆叠直方图。注意参数 barmode 设为 stack。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
df.pct_change().iplot(kind='histogram', 
                      barmode='stack',
                      xTitle='日收益率', yTitle='概率', title='四只股票日收益率堆叠直方图')

下面四图分别画四只股票日收益率的直箱形图,前三个都是竖直展示箱 (参数 orirentation ='v'),并展示全部数据点、只展示离群点,和只展示可疑离群点,最后一天按水平展示箱 (参数 orirentation ='h')。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
df.pct_change().iplot(kind='box', 
                      orientation='v', boxpoints='all',
                      xTitle='股票', yTitle='日收益率', title='四只股票日收益率箱形图')
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
df.pct_change().iplot(kind='box',
                      orientation='v', boxpoints='outliers',
                      xTitle='股票', yTitle='日收益率', title='四只股票日收益率箱形图')
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
df.pct_change().iplot(kind='box', 
                      orientation='v', boxpoints='suspectedoutliers',
                      xTitle='股票', yTitle='日收益率', title='四只股票日收益率箱形图')
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
df.pct_change().iplot(kind='box', 
                      orientation='h',
                      xTitle='日收益率', yTitle='股票', title='四只股票日收益率箱形图')

画四只股票按季度收益率的柱状图。按季度用 rsample('Q') 来分组;计算累计收益用 apply() 将 np.prod(1+x)-1 应用到每组中所有的数据。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
df.pct_change().resample('Q').apply(lambda x: np.prod(1+x)-1).\
        iplot(kind='bar', 
              xTitle='季度',
              yTitle='收益率',
              title='四只股票季度收益率柱状图')

画 NIO 和 DAO 的折线+拟合图,只需设置 bestfit 为 True,此外还可用 colors 和 bestfit_colors 设置折线和拟合线的颜色。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
df[['NIO','DAO']].iplot( kind='scatter', 
                         bestfit=True, 
                         colors=['blue','red'],
                         bestfit_colors=['blue','red'],
                         xTitle='日期', yTitle='价格', title='最优线性拟合' )

画图四只股票月收益率的气泡图。代码稍微有些复杂,但还是能一行流写出 (尽管有几个断行)。如何 resample 计算累计收益率前面已经讲了就不重复了,关键是先用 pd.melt() 将宽表变成长表,使其用三列 date, code 和 value,然后分别设为气泡的 x 轴数据、y 轴数据、和气泡大小。最后用 code 来区分不同股票的月收益率,即用不同颜色区分。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
pd.melt( df.pct_change()
           .resample('M')
           .apply(lambda x: np.prod(1+x)-1)
           .reset_index(), id_vars=['date'], var_name='code' )\
        .iplot( kind='bubble', 
                x='value', y='date', size='value', 
                categories='code',
                xTitle='收益率', yTitle='日期', title='四只股票月度收益率气泡图' )

回顾上面 iplot() 函数签名中,还有 **kwargs 参数,比如添加水平线 (hline) 和竖直线 (vline)。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
df[['FUTU']].iplot(hline=[40,60], 
                   vline=['2020-11-19'],
                   xTitle='价格', yTitle='日期', title='FUTU 股价')

可用字典格式进一步设置水平线和竖直线的特征。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
df[['FUTU']].iplot(hline=[dict(y=40,color='blue',width=10),
                          dict(y=60,color='green',dash='dash')], 
                   vline=['2020-11-19'],
                   xTitle='价格', yTitle='日期', title='FUTU 股价')

同理,可添加水平块 (hspan) 和竖直块 (vspan)。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
df[['FUTU']].iplot(hspan=[(40,60)],
                   vspan=[('2020-11-19','2021-01-01')],
                   xTitle='价格', yTitle='日期', title='FUTU 股价')

可用字典格式进一步设置水平块和竖直块的特征。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
df[['FUTU']].iplot(hspan={'y0':40, 'y1':60, 'color':'black', 'fill':False}, 
                   vspan={'x0':'2020-11-19', 'x1':'2021-01-01', 'color':'blue', 'fill':True, 'opacity':0.2},
                   xTitle='价格', yTitle='日期', title='FUTU 股价')

画子图也可以实现,将 subplots 设为 True 即可。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
df.iplot( subplots=True, 
          subplot_titles=True, 
          legend=False,
          xTitle='日期', yTitle='价格', title='四只股票价格')

显式设定多图的布局也容易,用 shape 参数。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
df.pct_change()[-30:].iplot( subplots=True, 
                             shape=(4,1), 
                             shared_xaxes=True, 
                             vertical_spacing=.02, 
                             fill=True,
                             xTitle='日期', title='四只股票日收益率')

如果多图的布局不规则怎么办?如果每个子图的类型不一样怎么办?

好办!分四步:

  1. 将具体的子图一个个按顺序放入 cf.figures() 里
  2. 创建布局,用 cf.tools.get_base_layout()
  3. 设定每个子图占布局的位置,用 cf.subplots() 并设置 specs
  4. 最后 cf.iplot() 画图即可

3

总结

Cufflinks 很简单,一行 iplot 流

Cufflinks 不简单,细节在魔鬼

熟读函数 API,很快能学会

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

本文分享自 王的机器 微信公众号,前往查看

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

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

评论
登录后参与评论
暂无评论
推荐阅读
Python爬虫+数据可视化:分期并预测双色球中奖号码
红球一共6组,每组从1-33中抽取一个,六个互相不重复。然后蓝球是从1-16中抽取一个数字,这整个组成的双色球
松鼠爱吃饼干
2021/09/02
5.8K0
三色球的概率问题及算法
嘿!想象一下,有一个魔法口袋,里面装着 12 个球!已知其中 3 个是红的,3 个是白的,6 个是黑的。现在的任务是从这个神秘的口袋里任意抓出 8 个球,然后我们要搞清楚会有多少种有趣的搭配!
剑指工控
2023/08/31
6740
三色球的概率问题及算法
【玩转Python系列】【小白必看】使用Python爬取双色球历史数据并可视化分析
这部分代码导入了需要使用的库。requests库用于发送网络请求,lxml库用于解析HTML,csv库用于处理CSV文件,matplotlib.pyplot库用于绘制图表,matplotlib.font_manager.FontProperties库用于加载自定义字体。
全栈若城
2024/02/29
1.1K0
【玩转Python系列】【小白必看】使用Python爬取双色球历史数据并可视化分析
Using Gaussian processes for regression降维之高斯过程
In this recipe, we'll use the Gaussian process for regression. In the linear models section,we saw how representing prior information on the coefficients was possible using Bayesian Ridge Regression.
到不了的都叫做远方
2019/11/07
1.1K0
关于重温机器学习笔记-线性模型
由于高等数学底子太差的原因,机器学习总是无法深入学习下去,只能做一个简单的尝试者,甚至连调优也未必能算的上,不过这样也好,可以把重心放到对业务的理解上,以及业务和模型的选择上。
python与大数据分析
2022/03/11
4770
关于重温机器学习笔记-线性模型
严谨解决5种机器学习算法在预测股价的应用(代码+数据)
机器学习有很多应用,其中之一就是预测时间序列。一个最有趣(或者可能是最赚钱)的时间序列是股票价格。
量化投资与机器学习微信公众号
2019/02/26
5.8K1
一份机器学习的自白书
我们可能生活在人类历史上最具决定性的时期。计算机正从大型主机过渡到 PC 再过渡到云计算。但它的定义不是发生了什么,而是未来几年将要发生什么。
红色石头
2022/01/12
5340
一份机器学习的自白书
快速入门简单线性回归 (SLR)
今天云朵君将和大家一起学习回归算法的基础知识。并取一个样本数据集,进行探索性数据分析(EDA)并使用 statsmodels.api、statsmodels.formula.api 和 scikit-learn 实现 简单线性回归(SLR)。
数据STUDIO
2022/04/11
2.7K0
快速入门简单线性回归 (SLR)
归一化的作用,sklearn 安装
1)概率模型不需要归一化,因为这种模型不关心变量的取值,而是关心变量的分布和变量之间的条件概率;
zhangjiqun
2024/12/14
1170
归一化的作用,sklearn 安装
15年5700亿,双色球16227注一等奖数据中,我们发现了这些秘密
导读:去年,我曾写过一篇文章用Python爬取了14年所有的福彩3D信息,彩民们,只能帮你们到这了,得到很多人的反响,很多粉丝留言,快点出一版分析教程,找找其中的规律。说不定哪天头等奖就是你,从此迎娶白富美,走上人生巅峰!
IT阅读排行榜
2019/03/19
1.5K0
15年5700亿,双色球16227注一等奖数据中,我们发现了这些秘密
python3基础学习(双色球随机生成器
  最近学习了python3的一些基础语法,语法基本搞懂了,因此自己想通过一些小东西进行实战下,以此来加深学习!   实战一:双色球随机生成器,使用语法:python3 xx.py 红球个数 蓝球个数
py3study
2020/01/06
8590
01 使用LSTM模型预测双色球,中大奖指日可待!
上班空闲之余,同事们经常去买买彩票乐呵乐呵,希望中了头等奖就可以走上人生巅峰,哈哈哈!
测试开发囤货
2021/09/08
7.8K1
实战-电力窃露漏电用户自动识别
https://keras.io/api/metrics/classification_metrics/#precision-class
西西嘛呦
2020/09/22
1.1K0
实战-电力窃露漏电用户自动识别
手把手:Python加密货币价格预测9步走,视频+代码
YouTube网红小哥Siraj Raval系列视频又和大家见面啦!今天要讲的是加密货币价格预测,包含大量代码,还用一个视频详解具体步骤,不信你看了还学不会! 点击观看详解视频 时长22分钟 有中文字幕 ▼ 预测加密货币价格其实很简单,用Python+Keras,再来一个循环神经网络(确切说是双向LSTM),只需要9步就可以了!比特币以太坊价格预测都不在话下。 这9个步骤是: 数据处理 建模 训练模型 测试模型 分析价格变化 分析价格百分比变化 比较预测值和实际数据 计算模型评估指标 结合在一起:可视化 数
大数据文摘
2018/05/23
1K1
python基础代码汇总
1. 文件操作 请通过键盘依次输入每位同学的学号、姓名、性别、身高、体重,并保存在c:\student.txt文件中,每位同学一行。程序运行过程如下: 学号: 100 姓名: zhangsan 性别: 男 身高: 175 体重: 72 学号: 200 姓名: lisi 性别: 女 身高: 168 体重: 55 保存之后的文件内容如下: 100 zhangsan 男 175 72 200 lisi 女 168 55 请通过键盘输入学号,在刚才保存的c:\student.txt文件中,查询相应的学生,输出ta的身高。运行过程如下: 学号: 100 175
用户8442333
2021/05/17
5110
scikit-learn的五种机器学习方法使用案例(python 代码)
对于一些开始搞机器学习算法有害怕下手的小朋友,该如何快速入门,这让人挺挣扎的。 在从事数据科学的人中,最常用的工具就是R和Python了,每个工具都有其利弊,但是Python在各方面都相对胜出一些,这是因为scikit-learn库实现了很多机器学习算法。 加载数据 我们假设输入时一个特征矩阵或者csv文件。 首先,数据应该被载入内存中。 scikit-learn的实现使用了NumPy中的arrays,所以,我们要使用NumPy来载入csv文件。 以下是从UCI机器学习数据仓库中下载的数据。 import
机器学习AI算法工程
2018/03/14
1.4K0
机器学习实战 | 第二章:线性回归模型
线性回归(Linear Regression) 这个类是传统最小二乘回归的类.是最基础的线性回归的类. class sklearn.linear_model.LinearRegression(fit_intercept=True, normalize=False, copy_X=True, n_jobs=1) 参数: fit_intercept : 布尔型,可选.是否计算模型的截距.要是设置为False的话,就不会计算截距了.(表明数据已经中心化了.) normalize : 布尔型,可选,默认是F
用户1332428
2018/03/08
7490
通过机器学习的线性回归算法预测股票走势(用Python实现)
在本人的新书里,将通过股票案例讲述Python知识点,让大家在学习Python的同时还能掌握相关的股票知识,所谓一举两得。这里给出以线性回归算法预测股票的案例,以此讲述通过Python的sklearn库实现线性回归预测的技巧。
用户1153489
2019/10/23
2.6K0
通过机器学习的线性回归算法预测股票走势(用Python实现)
如何绘制qq图_python画图
PS:当然也可以用KS检验,利用python中scipy.stats.ks_2samp函数可以获得差值KS statistic和P值从而实现判断。
全栈程序员站长
2022/09/22
1.5K0
如何绘制qq图_python画图
Python 机器学习库 --- sklearn --- 线性模型
本文介绍了Python机器学习库sklearn中的线性回归模型,包括普通最小二乘法和正规方程法。普通最小二乘法使用最小化均方误差来估计模型参数,而正规方程法使用矩阵分解的方法求解线性方程组。这些方法在数据科学和机器学习领域被广泛应用,可以用于预测、建模和估计未知数据。
YingJoy_
2017/10/25
2.3K0
Python 机器学习库 --- sklearn --- 线性模型
推荐阅读
相关推荐
Python爬虫+数据可视化:分期并预测双色球中奖号码
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档