社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

Handcalcs,让python科学计算过程更清晰

新语数据故事汇 • 8 月前 • 393 次点击  

当你的数据分析过程或算法代码中充斥着数学计算和复杂公式时,是否曾感到头昏脑胀,难以理清计算过程?难道你不曾梦想过一种方法,能够让这些计算过程变得清晰易懂,甚至近乎魔法般简单?幸运的是,这样的神奇工具已经出现了——它就是Handcalcs。Handcalcs是一个令人惊叹的Python库,它不仅能够让数值计算过程变得清晰可视,而且还能让你轻松理解和解释这些复杂的计算。让我们一起揭开Handcalcs的神秘面纱,探索如何用它让Python计算过程变得更加清晰。

Handcalcs 是什么

Handcalcs 是一个非常实用的 Python 库,它能够让数值计算过程更加清晰易懂。该库适用于科学/工程计算、教育/教学以及数据分析等多个领域,有助于开发者更好地理解和解释计算过程。

我们看一下简单的示例:

import handcalcs.renderfrom math import sqrt, pi

%%rendera=3b=-10c=2x = -b + sqrt(b**2 - 4*a*c)/(2*a)

安装handcalcs

pip install handcalcs

基本用法1:魔法指令渲染和转化LaTex(%%render、%%tex)

handcalcs 可以作为 Jupyter Notebook 或 Jupyter Lab 或SmartNotebook中的单元格魔法指令使用。%%render 魔法指令渲染成公式展示输出;而%%tex魔法指令将表达式转换LaTex 公式表达。

首先,导入该模块并运行单元格:

import handcalcs.renderfrom math import sqrt, pi

使用%%reader的示例:

%%rendera = 2b = 3c = 2*a + b/3

使用%%tex的示例:

%%texa = 2 / 3 * sqrt(pi)

基本用法2:装饰器的方式使用,@handcalc()

导入@handcalc()装饰器:

from handcalcs.decorator import handcalc

具体的装饰器参照上图的说明。下面一个示例:

@handcalc(jupyter_display=True)def my_calc(x :float,y:float,z:float):  a=2*x  b=3*a/z+sqrt(a+y/2)  c=a+b  return c
result=my_calc(2.3,3.2,1.2)
print(result)

符号数学计算sympy的支持

Sympy允许对代数表达式进行符号操作、求解和积分。如果您需要处理Sympy表达式或方程以进行计算,请使用handcalcs来处理您的结果表达式替换和计算。

import sympy as spimport handcalcs.rendera,b,c=sp.symbols("a b c")d= a**2 +b*af= sp.integrate(d,a)f

%%render sympya=5b=10x=f

下标(Subscripts)支持

当在变量名中使用下划线(_)时,变量名中的下标会自动生成。对于每个在系列中使用的单独下划线,都会嵌套生成子下标。

%%rendera_1=10x_i=200

更为详细的帮助参考官方文档:https://github.com/connorferster/handcalcs

Handcalcs 的特征和应用场景:

主要特征如下

  • 手写风格:Handcalcs 将计算过程转换为类似手写计算的格式,包括数学符号、单位、注释等,使其更易于阅读和理解。

  • Notebook 集成:Handcalcs 可以将计算过程直接嵌入到 Jupyter Notebook 中,方便交互式计算和结果展示。

  • LaTeX 支持:Handcalcs 支持 LaTeX 语法,可以生成高质量的数学公式。

  • 自定义格式:Handcalcs 支持自定义输出格式,例如字体、颜色、间距等。

应用场景如下:

  • 数据分析:Handcalcs 可以将数据分析过程中的计算步骤可视化,方便解释和交流。
  • 科学/工程计算:Handcalcs 可以使科学。工程计算过程更加清晰,方便调试和理解。
  •  教育和教学:Handcalcs 可以帮助学生更好地理解数学和科学计算过程。


Handcalcs 是一款非常实用的 Python 库,能够让数值计算过程更加清晰易懂。该库适用于科学和工程计算、教育和教学、以及数据分析等多个领域,有助于开发者更好地理解和解释计算过程。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/169591
 
393 次点击