数学建模笔记(一)python使用入门

数学建模笔记(一)python使用入门

这一节课讲的比较基础,就把常用的库和函数列出来加深印象

常用内置函数

dir(__builtins__)  # 查看所有内置函数和内置对象
help(函数名) # 查看函数的用法
eval(s)  # 反回字符串表示的值
sorted(x,key=lambda x:x) # 指定规则排序
enumerate(x) # 同时获得索引和值
map(fuc, [1,2,3,4,5])  # 对所有元素执行fuc操作
filter(lambda x: x>10,[1,2,43,123]) # 过滤不满足条件的对象
zip('abcd',range(4)) # 将两个列表对应元素构成元组

numpy数组

创建
b = np.array([[1, 2, 3], [4, 5, 6]])
c = np.arange(1,5) #生成数组[1, 2, 3, 4]
d = np.linspace(1, 4, 4) #生成数组[1, 2, 3, 4]
e = np.logspace(1, 3, 3, base=2) #生成数组[2, 4, 8]
f = np.eye(3) # 三阶单位阵
g = np.eye(3, k=1) #生成第k 对角线的元素为1,其他元素为0 的3 阶方阵
合并与分割

合并

import numpy as np
a = np.arange(16).reshape(4,4) # 生成 4 行 4 列的数组
b = np.floor(5*np.random.random((2, 4))) # floor向上取整
c = np.ceil(6*np.random.random((4, 2))) # ceil向下取整
d = np.vstack([a, b]) # 上下合并矩阵
e = np.hstack([a, c]) # 左右合并矩阵

分割

import numpy as np
a = np.arange(16).reshape(4,4) #
生成 4 行 4 列的数组
b = np.vsplit(a, 2) # 行分割
c = np.hsplit(a, 4) # 列分割
矩阵运算
c = a @ b  # 矩阵乘法
# 解方程组
a = np.array([[3, 1], [1, 2]])
b = np.array([9, 8])
x1 = np.linalg.inv(a) @ b #第一种解法
x2 = np.linalg.solve(a, b) #第二种解法
# 最小二乘解
import numpy as np
a = np.array([[3, 1], [1, 2],[1, 1]])
b = np.array([9, 8, 6])
x = np.linalg.pinv(a) @ b
# 求特征
  • 18
    点赞
  • 137
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值