py之patsy:patsy的简介、安装、使用方法之详细攻略

简介: py之patsy:patsy的简介、安装、使用方法之详细攻略

patsy的简介

image.png



   Patsy是一个python库,用于描述统计模型(尤其是线性模型,或具有线性组件的模型)和构建设计矩阵。Patsy为python带来了r“formulas”的便利。它受到R和S中使用的公式迷你语言的启发并与之兼容。


  patsy is a Python package for describing statistical models (especially linear models, or models that have a linear component) and building design matrices. It is closely inspired by and compatible with the formula mini-language used in R and S.


        利用Patsy创建模型描述 Patsy是一个python库,用于描述统计模型(尤其是线性模型),方法是通过一个叫做公式语法(formula syntax)的字符串来描述。这种公式语法的灵感来源于R和S语言中的公式语法。


      Patsy的公式是有特殊格式的字符串,像下面这样: y ~ x0 + x1 这种a + b的语法并不代表将a和b相加,而是代表为模型创建的设计矩阵的术语(terms in the design matrix)。patsy.dmatrices函数,取一个公式字符串和一个数据集(可以使DataFrame或dict),然后为线性模型产生设计矩阵。


patsy文档:patsy - Describing statistical models in Python




patsy的安装


pip install patsy

image.png



patsy的使用方法


patsy.dmatrices("y ~ x + a + b + a:b", data)

1、patsy.dmatrices函数,取一个公式字符串和一个数据集(可以使DataFrame或dict),然后为线性模型产生设计矩阵。


data = pd.DataFrame({'x0': [1, 2, 3, 4, 5],

                    'x1': [0.01, -0.01, 0.25, -4.1, 0.],

                    'y': [-1.5, 0., 3.6, 1.3, -2.]})

print(data)

y, X = patsy.dmatrices('y ~ x0 + x1', data)

print(y)

  x0    x1    y

0   1  0.01 -1.5

1   2 -0.01  0.0

2   3  0.25  3.6

3   4 -4.10  1.3

4   5  0.00 -2.0

[[-1.5]

[ 0. ]

[ 3.6]

[ 1.3]

[-2. ]]





 


相关文章
|
PyTorch 算法框架/工具
Bert Pytorch 源码分析:五、模型架构简图
Bert Pytorch 源码分析:五、模型架构简图
271 0
|
关系型数据库 MySQL Linux
Linux在线安装MySQL8
Linux在线安装MySQL8
604 0
|
运维 Linux 虚拟化
Linux 查看 CPU 使用情况
在 Linux 系统中,查看 CPU 使用情况是性能分析和故障排查的重要环节。查看 CPU 使用情况,使用 top 命令或者 htop 命令来查看。
|
Ubuntu Linux 虚拟化
LinuxUbuntu安装VMware tools Segmentation fault (core dumped)怎么解决
更新操作系统和内核:使用apt-get或apt命令更新你的Ubuntu操作系统和内核。运行以下命令更新软件包:
2407 0
|
11月前
|
SQL 分布式计算 大数据
《深度剖析Spark SQL:与传统SQL的异同》
Spark SQL是Apache Spark生态系统中用于处理结构化数据的组件,作为大数据时代的SQL利器,它在继承传统SQL语法和逻辑思维的基础上,重新定义了数据处理的效率与灵活性。相比传统SQL,Spark SQL支持分布式计算、内存处理及多种数据源,可高效应对PB级数据挑战。其核心概念DataFrame提供优化查询能力,使数据分析更便捷。两者虽有联系,但在处理规模、计算模式和优化策略上差异显著,共同满足不同场景下的数据需求。
690 35
|
开发工具 git
关于github默认分支名改为main后可能的处理【git推送到远程不同的分支、github修改默认分支名】
git如何删除本地分支、删除远程分支,由分支的删除可以实现推送到远程不同的分支。 git不允许推送到远程与本地分支名不同的分支上。
1844 1
|
IDE Java 应用服务中间件
Java“NoSuchFieldError”解决
“NoSuchFieldError”是Java中常见的运行时错误,通常由于访问不存在的类字段引起。解决方法包括:检查字段拼写、确保类路径正确、更新依赖库版本等。
1906 5
|
机器学习/深度学习 人工智能 JSON
微信小程序原生AI运动(动作)检测识别解决方案
近年来,疫情限制了人们的出行,却推动了“AI运动”概念的兴起。AI运动已在运动锻炼、体育教学、线上主题活动等多个场景中广泛应用,受到互联网用户的欢迎。通过AI技术,用户可以在家中进行有效锻炼,学校也能远程监督学生的体育活动,同时,云上健身活动形式多样,适合单位组织。该方案成本低、易于集成和扩展,已成功应用于微信小程序。
|
存储 测试技术 API
Pandas 2.2 中文官方教程和指南(十·一)(4)
Pandas 2.2 中文官方教程和指南(十·一)
814 2
|
SQL 存储 测试技术
SqlAlchemy 2.0 中文文档(五十七)(4)
SqlAlchemy 2.0 中文文档(五十七)
543 0