Python最小二乘法矩阵


Posted in Python onJanuary 02, 2019

最小二乘法矩阵

#! /usr/bin/env python
# -*- coding: utf-8 -*-
import numpy as np
def calc_left_k_mat(k):
  """
  获得左侧k矩阵
  :param k:
  :return:
  """
  k_mat = []
  for i in range(k + 1):
    now_line = []
    for j in range(k + 1):
      now_line.append(j + i)
    k_mat.append(now_line)
  return k_mat
def calc_right_k_mat(k):
  """
  计算右侧矩阵
  :param k:
  :return:
  """
  k_mat = []
  for i in range(k + 1):
    k_mat.append([i, i + 1])
  return k_mat
def pow_k(x, k):
  """
  计算x列表中的k次方和
  :param x: 点集合的x坐标
  :param k: k值
  :return:
  """
  sum = 0
  for i in x:
    sum += i ** k
  return sum
def get_left_mat_with_x(k_mat, k):
  """
  将 左侧k矩阵运算得到左侧新的矩阵
  :param k_mat:
  :param k:
  :return:
  """
  left_mat = []
  for kl in k_mat:
    now_data = []
    for k in kl:
      now_data.append(pow_k(x, k))
    left_mat.append(now_data)
  return left_mat
def get_right_mat_with(right_k_mat):
  """
  将 右侧k矩阵运算得到右侧新的矩阵
  :param right_k_mat:
  :return:
  """
  right_mat = []
  for i in range(len(right_k_mat)):
    sum = 0
    for xL, yL in zip(x, y):
      a = (xL ** right_k_mat[i][0]) * (yL ** right_k_mat[i][1])
      sum += a
    right_mat.append(sum)
  return right_mat
def fuse_mat(left, right):
  """
  融合两个矩阵
  :param left:
  :param right:
  :return:
  """
  new_mat = []
  for i in range(len(left)):
    asd = np.append(left[i], right[i])
    new_mat.append(list(asd))
  return new_mat
if __name__ == '__main__':
  k = 3
  x = [1, 2, 3]
  y = [1, 2, 3]
  # 计算原始左侧K矩阵
  left_k_mat = calc_left_k_mat(k)
  print("原始左侧K矩阵")
  print(left_k_mat)
  # 计算原始右侧K矩阵
  right_k_mat = calc_right_k_mat(k)
  print("原始右侧k矩阵")
  print(right_k_mat)
  # 计算左侧 k 矩阵
  new_left_mat = get_left_mat_with_x(k_mat=left_k_mat, k=k)
  # 计算右侧 k 矩阵
  new_right_mat = get_right_mat_with(right_k_mat=right_k_mat)
  print("计算后左侧K矩阵")
  print(new_left_mat)
  print("计算后右侧侧K矩阵")
  print(new_right_mat)
  print("-----" * 10)
  # 融合两个矩阵 左侧 矩阵每一行增加 右侧矩阵的对应行
  new_all = fuse_mat(new_left_mat, new_right_mat)
  print("完整矩阵")
  print(new_all)

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。如果你想了解更多相关内容请查看下面相关链接

Python 相关文章推荐
python中常用的各种数据库操作模块和连接实例
May 29 Python
在Python中操作列表之list.extend()方法的使用
May 20 Python
python相似模块用例
Mar 04 Python
python实现自动发送报警监控邮件
Jun 21 Python
centos6.5安装python3.7.1之后无法使用pip的解决方案
Feb 14 Python
Python函数定义及传参方式详解(4种)
Mar 18 Python
python对象与json相互转换的方法
May 07 Python
使用python将最新的测试报告以附件的形式发到指定邮箱
Sep 20 Python
Python 中pandas索引切片读取数据缺失数据处理问题
Oct 09 Python
pytorch对梯度进行可视化进行梯度检查教程
Feb 04 Python
在django中使用post方法时,需要增加csrftoken的例子
Mar 13 Python
Python实现FTP文件定时自动下载的步骤
Dec 19 Python
Centos部署django服务nginx+uwsgi的方法
Jan 02 #Python
Python 一句话生成字母表的方法
Jan 02 #Python
使用python将请求的requests headers参数格式化方法
Jan 02 #Python
浅谈python requests 的put, post 请求参数的问题
Jan 02 #Python
Python中出现IndentationError:unindent does not match any outer indentation level错误的解决方法
Apr 18 #Python
Python装饰器语法糖
Jan 02 #Python
Python WEB应用部署的实现方法
Jan 02 #Python
You might like
mysql_fetch_assoc和mysql_fetch_row的功能加起来就是mysql_fetch_array
2007/01/15 PHP
php中批量修改文件后缀名的函数代码
2011/10/23 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(九)
2014/06/24 PHP
PHP源码分析之变量的存储过程分解
2014/07/03 PHP
PHP中的output_buffering详细介绍
2014/09/27 PHP
php递归调用删除数组空值元素的方法
2015/04/28 PHP
php根据日期或时间戳获取星座信息和生肖等信息
2015/10/20 PHP
javascript模仿msgbox提示效果代码
2008/06/10 Javascript
jQuery EasyUI API 中文文档 - PropertyGrid属性表格
2011/11/18 Javascript
javascript 星级评分效果(手写)
2012/12/24 Javascript
window.location.href = window.location.href 跳转无反应 a超链接onclick事件写法
2013/08/21 Javascript
js中运算符&& 和 || 的使用记录
2014/08/21 Javascript
JavaScript中获取高度和宽度函数总结
2014/10/08 Javascript
javascript省市级联功能实现方法实例详解
2015/10/20 Javascript
基于JavaScript代码实现pc与手机之间的跳转
2015/12/23 Javascript
原生js的RSA和AES加密解密算法
2016/10/08 Javascript
Javascript typeof与instanceof的区别
2016/10/18 Javascript
从零学习node.js之利用express搭建简易论坛(七)
2017/02/25 Javascript
在Vue中使用echarts的实例代码(3种图)
2017/07/10 Javascript
JavaScript上传文件时不用刷新页面方法总结(推荐)
2017/08/15 Javascript
vue初尝试--项目结构(推荐)
2018/01/30 Javascript
python实现的解析crontab配置文件代码
2014/06/30 Python
Python中实现两个字典(dict)合并的方法
2014/09/23 Python
Python列表解析配合if else的方法
2018/06/23 Python
Python计算时间间隔(精确到微妙)的代码实例
2019/02/26 Python
python实现飞机大战游戏
2020/10/26 Python
在Django model中设置多个字段联合唯一约束的实例
2019/07/17 Python
python接口自动化如何封装获取常量的类
2019/12/24 Python
python 模拟登陆github的示例
2020/12/04 Python
Stuart Weitzman美国官网:美国奢华鞋履品牌
2016/08/18 全球购物
美国在线艺术商店:HandmadePiece
2020/11/06 全球购物
幼儿园消防安全制度
2014/01/26 职场文书
销售求职信范文
2014/05/26 职场文书
身份证丢失证明
2015/06/19 职场文书
入党心得体会
2019/06/20 职场文书
Apache Hudi 加速传统的批处理模式
2022/04/24 Servers