Python学习-Scipy库模块介绍(物理常量表示、逻辑回归、求立方根)

20 篇文章 6 订阅

Python学习-Scipy库

目录
1、Scipy库的简单介绍
2、几种数学、物理常量
物理、时间、长度
3、特殊数学函数:special
1)逻辑回归模型logit()
2)求立方根
1、Scipy库的简单介绍

Scipy是一个高级科学计算库,主要有以下子模块:
spcial: 特殊数学函数; io: 数据输入输出;
linalg: 线性代数; stats: 统计
integrate: 积分; spatial: 空间算法和数据结构;
sparse: 稀疏矩阵; ignal: 信号处理;
interpolate: 插值; optimize: 优化;
odr: 正交距离回归; ndimage: 多维图像处理;
cluster: 聚类; ffpack: 傅里叶变换

导入库
import scipy.constants as cn
import numpy as np
import matplotlib.pyplot as plt
from scipy.special import logit  # 逻辑回归模型
from scipy.linalg import lu  # lu分解
2、几种数学、物理常量
# 几种数学、物理常量
print("黄金比例:", cn.golden)  # 等价于cn.golden_ratio
print("光速:", cn.c)  # 等价于cn.speed_of_light
print("摩尔气体常数:", cn.R)  # 等价于cn.gas_constant
print("精细结构常数:", cn.alpha)  # 等价于cn.fine_structure
print("玻尔兹曼常数:", cn.k)  # 等价于cn.Boltzmann
print("1角度圆对应的弧度:", cn.degree)  # 1角度圆对应的弧度

# 时间
print("一分钟的秒数:", cn.minute)  # 一分钟的秒数
print("一小时的秒数:", cn.hour)  # 一小时的秒数
print("一天的秒数:", cn.day)  # 一天的秒数
print("一年的秒数:", cn.year)  # 一年的秒数
print("一朱利安年(365.25天)的秒数:", cn.Julian_year)  # 一朱利安年(365.25天)的秒数

# 长度
print("一英寸的米数:", cn.inch)  # 一英寸的米数
print("一英里的米数:", cn.mile)  # 一英里的米数
print("一光年的米数:", cn.light_year)  # 一光年的米数
输出
黄金比例: 1.618033988749895
光速: 299792458.0
摩尔气体常数: 8.314462618
精细结构常数: 0.0072973525693
玻尔兹曼常数: 1.380649e-23
1角度圆对应的弧度: 0.017453292519943295
一分钟的秒数: 60.0
一小时的秒数: 3600.0
一天的秒数: 86400.0
一年的秒数: 31536000.0
一朱利安年(365.25天)的秒数: 31557600.0
一英寸的米数: 0.0254
一英里的米数: 1609.3439999999998
一光年的米数: 9460730472580800.0
3、特殊数学函数:special

1)逻辑回归模型logit()
逻辑回归模型是一个离散选择法模型,公式为:logit(p )= log(p/(1-p))
当p>1或p<0时,logit( p)返回nan;
当p=0时,logit( p)返回-inf;
当p=1时,logit( p)返回inf;
参数p的正常范围为(0,1)

from scipy.special import logit
"""
逻辑回归模型:离散选择法模型  logit(p) = log(p/(1-p))
当p>1或p<0时,logit(p)返回nan;
当p=0时,logit(p)返回-inf;
当p=1时,logit(p)返回inf;
参数p的正常范围为(0,1)
"""
x = np.linspace(0, 1, 30)
y = logit(x)
print(y)

plt.figure(1)
plt.rc('font', family='simhei', size=15)  # 设置中文显示,字体大小
plt.rc('axes', unicode_minus=False)  # 该参数解决负号显示的问题
plt.scatter(x=x, y=y, s=20, marker='*', color='green')
# plt.plot(x, y, color='y')
plt.xlabel('x轴')
plt.xlabel('y轴')
plt.title("逻辑回归散点曲线")

plt.show()
输出
[       -inf -3.33220451 -2.60268969 -2.15948425 -1.83258146 -1.56861592
 -1.34373475 -1.1451323  -0.9650809  -0.7985077  -0.64185389 -0.49247649
 -0.34830669 -0.20763936 -0.06899287  0.06899287  0.20763936  0.34830669
  0.49247649  0.64185389  0.7985077   0.9650809   1.1451323   1.34373475
  1.56861592  1.83258146  2.15948425  2.60268969  3.33220451         inf]

在这里插入图片描述

2)求立方根:cbrt(x),等价于pow(x,1/3)
# 求立方根:cbrt(x),等价于pow(x,1/3)
from scipy.special import cbrt
plt.figure(2)
plt.rc('font', family='simhei', size=15)  # 设置中文显示,字体大小
plt.rc('axes', unicode_minus=False)  # 该参数解决负号显示的问题
x = np.arange(10)
y = cbrt(x)
print(y)
plt.scatter(x=x, y=y, s=20, marker='v', color='red')
plt.xlabel('x轴')
plt.xlabel('y轴')
plt.title("立方根散点曲线")

plt.show()
输出
[0.         1.         1.25992105 1.44224957 1.58740105 1.70997595
 1.81712059 1.91293118 2.         2.08008382]

在这里插入图片描述

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值