用Python 实现 excel中 trend函数实现预测数据

Python 版本

def leastSquaresFitLinear(known_y, known_x, offset_x):if len(known_y) != len(known_x):return 0num_points = len(known_y)x1 = y1 = xy = x2 = j = m = b = 0.0for i in range(num_points):known_x[i] -= offset_xx1 = x1 + known_x[i]y1 = y1 + known_y[i]xy = xy + known_x[i] * known_y[i]x2 = x2 + known_x[i] * known_x[i]j = (num_points * x2) - (x1 * x1)if j != 0.0:m = ((num_points * xy) - (x1 * y1)) / jb = ((y1 * x2) - (x1 * xy)) / jelse:b = y1 / 2return bif __name__ == '__main__':print(leastSquaresFitLinear([120.931851, 120.931851], [1.416, 1.416], 1.416))print(leastSquaresFitLinear([120.934185, 120.934185], [0.835, 0.84], 0.836))print(leastSquaresFitLinear([120.827912, 120.827961], [1.892, 1.897], 1.894))print(leastSquaresFitLinear([30.558758, 30.558756], [1.892, 1.897], 1.894))print(leastSquaresFitLinear([6.990148, 6.9], [1.892, 1.897], 1.894))

Javascript 版本

function LeastSquaresFitLinear(known_y, known_x, offset_x)
{if (known_y.length != known_x.length) return false; //("arrays are unequal lengths");var numPoints = known_y.length;var x1=0, y1=0, xy=0, x2=0, J, M, B;for (var i = 0; i < numPoints; i++){known_x[i] -= offset_x;x1 = x1 + known_x[i];y1 = y1 + known_y[i];xy = xy + known_x[i] * known_y[i];x2 = x2 + known_x[i] * known_x[i];}J = (numPoints * x2) - (x1 * x1);if (J != 0.0){M = ((numPoints * xy) - (x1 * y1)) / J;B = ((y1 * x2) - (x1 * xy)) / J;}return [M,B];
}

C# 版本

public static partial class Math2
{public static double[] Trend(double[] known_y, double[] known_x, params double[] new_x){// return array of new y valuesdouble m, b;Math2.LeastSquaresFitLinear(known_y, known_x, out m, out b);List<double> new_y = new List<double>();for (int j = 0; j < new_x.Length; j++){double y = (m * new_x[j]) + b;new_y.Add(y);}return new_y.ToArray();}// found at http://stackoverflow.com/questions/7437660/how-do-i-recreate-an-excel-formula-which-calls-trend-in-c// with a few modificationspublic static void LeastSquaresFitLinear(double[] known_y, double[] known_x, out double M, out double B){if (known_y.Length != known_x.Length){throw new ArgumentException("arrays are unequal lengths");}int numPoints = known_y.Length;//Gives best fit of data to line Y = MC + Bdouble x1, y1, xy, x2, J;x1 = y1 = xy = x2 = 0.0;for (int i = 0; i < numPoints; i++){x1 = x1 + known_x[i];y1 = y1 + known_y[i];xy = xy + known_x[i] * known_y[i];x2 = x2 + known_x[i] * known_x[i];}M = B = 0;J = ((double)numPoints * x2) - (x1 * x1);if (J != 0.0){M = (((double)numPoints * xy) - (x1 * y1)) / J;//M = Math.Floor(1.0E3 * M + 0.5) / 1.0E3; // TODO this is disabled as it seems to product results different than excelB = ((y1 * x2) - (x1 * xy)) / J;// B = Math.Floor(1.0E3 * B + 0.5) / 1.0E3; // TODO assuming this is the same as above}}}

Javascript Python 翻译 excel trend 函数相关推荐

  1. python char 相等_用 Python 实现 Excel文本函数

    用 Python 实现 Excel文本函数 Excel 是非常强大的电子表格软件,大家日常经常用 Excel 处理成绩.师生名单.分析数据等,对 Excel 的函数比较了解,通过用 Python 实现 ...

  2. python 对excel的函数操作_自动化报表(3)

    1. # 方法1 # openpyxl模块中的Comment()函数,给单元格添加批注 import pandas as pd from openpyxl import Workbook from o ...

  3. python 对excel的函数操作(2)

    1.用pandas的二维数组做除法运算,替换inf,过滤inf等操作 import pandas as pd import numpy as np# 用pandas科学数据库操作excel # 用pa ...

  4. python打开excel的函数-Python读取excel文件中带公式的值的实现

    在进行excel文件读取的时候,我自己设置了部分直接从公式获取单元格的值 但是用之前的读取方法进行读取的时候,返回值为空 import os import xlrd from xlutils.copy ...

  5. excel 批量翻译-excel 批量函数公司翻译大全免费

    excel 批量翻译,我们经常会需要Excel文档内容进行批量翻译,大多数人只会把内容复制粘贴到百度/谷歌或有道翻译,少数同学会输入公式翻译但是翻译出来的内容质量不是特别好,且中途还要去写函数代码.今 ...

  6. PYTHON 调用EXCEL VBA 函数:使用win32com模块

    import win32com.clientdef excel_VBA():xls=win32com.client.Dispatch('Excel.Application')xls.Workbooks ...

  7. python效仿excel日期函数(edate,eomonth)

    # -*- coding:utf-8 -*- # author:yr007 time: 2020-01-12import datetime import calendarclass DateCalcu ...

  8. python 标准库 excel_Python 操作 Excel 的函数库

    1. Python 操作 Excel 的函数库 我主要尝试了 3 种读写 Excel 的方法: 1> xlrd, xlwt, xlutils: 这三个库的好处是不需要其它支持,在任何操作系统上都 ...

  9. 用python处理excel的基本语法_Python-高级-实用-操作 Excel

    版权声明:本文为博主原创文章,遵循CC BY-NC-ND 4.0 版权协议,转载请附上原文出处链接和本声明. Python-高级-实用-操作 Excel 缘起 Excel 是我们日常工作学习中都会使用 ...

  10. 什么是SUM函数以及如何在Python,Excel和Mathlab中使用?

    SUM is the short form of the summation which is a mathematical operation. SUM is a very popular term ...

最新文章

  1. COBOL入门到精通
  2. 1美元训练BERT,教你如何薅谷歌TPU羊毛 | 附Colab代码
  3. 单点登录系统SSO概述 | 单点登录讲解(1)
  4. 提升win双屏体验_海信双屏A6L评测,在自由阅读中植入护眼水墨屏
  5. 前端学习(3215):类的编写
  6. gitlab 删除分支_如何删除gitlab上默认受保护的master主分支
  7. dubbo调用超时回滚_面试必问之Dubbo面试题
  8. docker-ovs遇到的问题以及解决办法
  9. Citrix SD-WAN 被曝远程代码执行漏洞
  10. innerdb disable error
  11. 三、K8s常见操作命令
  12. linux 中特殊权限,Linux SetGID(SGID)文件特殊权限用法详解
  13. 如何把图纸转换为t3格式_CAD图纸快速转换天正T3格式_鹏业CAD云服务
  14. 计算机里的本地安全策略在哪找,本地安全策略哪里去了?
  15. 领导给你安排任务,这三种话,越早说越好
  16. WinForm中用C#实现左侧导航菜单(1)——概览
  17. java 两张图片合成
  18. Windows学习总结(1)——win10系统最新快捷键汇总
  19. 天镜漏洞扫描报告HTML转Excel格式Python脚本
  20. 人脸识别手机端APK分享 | 极速体验人脸识别功能 创建一个简单的人脸识别手机APP程序

热门文章

  1. 【matlab】多维向量的转置
  2. 分段三次hermite插值python
  3. android 参数签名 存放,SignatureView 一个在Android上的电子签名板,能保存所签名的图片...
  4. 计算机自带扫雷游戏不显示,win7系统自带扫雷游戏打不开的解决方法
  5. 华为修改优先级命令_华为交换机配置命令---转
  6. 文字转语音怎么做?分享三种配音方法,真人语音很逼真
  7. 【免费】文字转换语音合成软件地摊叫卖录音真人配音广告制作朗读播音软件
  8. cass软件yy命令_南方CASS软件快捷命令大全,高手必备。。。
  9. java编辑双层pdf文件,双层PDF制作系统
  10. php 12306模拟登录,12306 selenium 模拟登录