- 博客(61)
- 收藏
- 关注
原创 JS宏进阶:数据分类之逻辑回归
逻辑回归(Logistic Regression)是一种用于解决分类问题的统计学习方法,特别是适用于二分类问题。总的来说,逻辑回归是一种简单、高效且易于理解的分类算法,特别适用于二分类问题。然而,在选择使用逻辑回归时,也需要考虑其局限性,并根据具体问题和数据特点进行选择和优化。
2025-03-03 15:14:11
275
原创 JS宏案例:多项式回归
多项式回归是曲线回归的一种,它通过在传统的线性回归模型中增加变量的高次项(如平方项、立方项等),来捕捉数据中的非线性关系。其基本原理是在线性回归的基础上,将自变量的幂次作为新的特征加入模型中,从而使模型能够捕捉到数据的非线性结构。C:表示回归常数k:表示回归系数:表示误差系数n:多项式的阶数与线性回归相比,多项式回归能够拟合数据之间的非线性关系。这种方法的核心思想是,任何光滑的曲线都可以通过适当高阶的多项式来逼近。因此,多项式回归在处理具有曲线趋势的数据时具有更高的灵活性。
2025-03-02 15:36:31
1115
原创 JS宏案例:搞个简单版的Series
Series 类是 pandas 库中的一个核心数据结构,它类似于一维数组,由数据和索引两部分组成;它是一种非常灵活且功能强大的数据结构,适用于各种数据处理和分析任务。结构:Series 类对象包括索引(index)和数据(values)两部分。索引位于左侧,数据位于右侧。索引样式丰富,可以是自动生成的整数索引(从0开始递增),也可以是自定义的标签索引或时间索引。数据类型:Series 类中的数据可以是任意类型,如整数、字符串、浮点数等。
2025-03-01 14:57:37
671
原创 JS宏案例:在wps编辑器中玩numpy
this.name = "维度错误";this.name = "值错误";上述代码中,定义了一个维度错误和值错误,是py中numpy模块中常见的两种错误。以上就是UP在wps编辑器中使用JS编写的numpy啦,当然和py中的numpy对比还存在很多的不足,比如random板块中就没有seed这一方法等等。不过对于一般情况而言应该是够用的,祝大家玩的愉快。
2025-02-28 14:38:44
1156
原创 python曲线回归小案例教程
曲线回归是一种统计方法,用于建立自变量(独立变量)和因变量(依赖变量)之间的非线性关系模型。与线性回归不同,线性回归假设自变量和因变量之间的关系是线性的,即可以通过一条直线来描述数据点的趋势;而曲线回归则允许这种关系是非线性的,可能表现为曲线、抛物线、指数、对数或其他复杂的数学形式。非线性关系:曲线回归适用于那些不能用直线来充分描述的数据关系。它允许模型以曲线形式拟合数据,以更好地捕捉数据的实际模式。数学模型:在曲线回归中,需要选择一个合适的数学模型来描述自变量和因变量之间的关系。
2025-02-26 09:18:54
980
原创 JS宏进阶:浅谈曲线回归
事实上,手算曲线回归的方法并不是只有最小二乘法这一种。本文只是使用最小二乘法计算二次曲线回归的JS代码示例。除此之外,还有多项式逼近,将曲线直线化等常用方法。但UP认为,这些方法都不如最小二乘来的简单直接。比如:当你使用多项式逼近法时容易导致过拟合的问题,因此在实际过程中,还需要一些交叉检验来评估模型的。再如,直线化法,就是将曲线转化为直线,再利用直线回归来求解,像上述示例中的二次曲线回归,可以将x^2看成一个整体,然后利用多元线性回归来解决,而在计算过程中,还是离不开最小二乘法。%20c。
2025-02-25 15:04:43
740
原创 Python逻辑回归小案例教程
这里我们使用一个常见的开源数据集:Breast Cancer Wisconsin Dataset,该数据集可以从scikit-learn的datasets模块中加载。这个任务的目标是预测肿瘤是良性的还是恶性的。load_breast_cancer():从scikit-learn中加载乳腺癌数据集。X:特征矩阵,包含关于肿瘤的特征数据。y:目标向量,包含肿瘤的分类标签(0为良性,1为恶性)。逻辑回归是一种基础且强大的分类工具,特别适用于二分类问题。尽管它有一些限制,但在许多实际应用中仍然非常有效。
2025-02-22 16:24:37
1007
原创 PYTHON机器学习小项目教程:预测鸢尾花种类
通过以上步骤,你已经完成了一个简单的机器学习项目,使用 k-NN 分类器来预测鸢尾花的种类。你可以尝试不同的模型、调整参数或者进行特征工程,以提高模型的性能。随着经验的积累,你可以挑战更复杂的数据集和问题。
2025-02-21 16:55:13
990
原创 JS宏进阶:数据分析之线性回归
什么时线性回归?线性回归时是用来干什么的?线性回归是回归分析的一种,用于确定两种或两种以上变量之间相互依赖的定量关系。其核心思想是通过找到一个线性方程,来预测一个或多个自变量(independent variables)与因变量(dependent variable)之间的关系。线性回归的目标是画出一条最佳拟合线(best-fitting line),从而了解变量之间的相互作用。在线性回归中,数据使用线性预测函数来建模,并且未知的模型参数也是通过数据来估计。
2025-02-21 11:00:23
942
原创 JS宏实例:数据透视工具的制作(三)
要实现数据透视功能,上述两个类需要结合使用。通过TablePivot中的groupBy方法返回GroupBy对象,再根据合适的汇总方式进行汇总。这样编程的灵活性与可扩展性较高,如需要新增一种汇总方式,可直接再GroupBy中添加新的属性或方法。
2025-02-20 10:39:28
806
原创 JS宏案例:分层抽样
分层抽样是一种将数据集划分为多个互不重叠的子群(层),然后从每一层中独立进行抽样的方法。这种方法可以确保各个子群在样本中得到适当的代表,从而提高样本的代表性。它适用于总体个数较少,且总体中各单位之间差异较小的情况,且抽样误差可以事先计算,并控制在一定范围内;但是当总体数量较大时,抽样过程可能较为繁琐。在进行分层抽样时,要确保分层的合理性。换句话说分层标准应具有科学性和代表性,能够反映总体的主要特征的。保持样本的随机性和独立性,即在各层内抽取样本时,应确保样本的随机性和独立性,避免样本偏倚和误差。
2025-02-19 09:12:54
991
原创 JS宏案例:哈希分区与抽样
哈希分区和抽样在数据处理和分析中各自扮演着不同的角色,但它们在某些情况下可以相互结合使用。例如,在数据仓库中,可以使用哈希分区将数据分布到多个分区中,以优化查询性能。然后,在每个分区上应用抽样方法,以减少需要处理的数据量,并快速获取每个分区的特征信息。这种结合使用的方法可以在保证一定精度的前提下,大大提高数据处理的效率。总而言之,哈希分区和抽样是数据处理和数据分析中的两个重要概念,它们在不同的场景下发挥着重要作用。哈希分区通过将数据均匀分布到多个分区中,可以优化查询性能、简化管理和提高系统的可扩展性。
2025-02-18 15:54:30
1214
原创 JS宏实例:数据透视工具的制作(二)
上一节中,我们简单介绍了使用JS宏进行数据透视工具制作大致思路。今天,我们根据相关思路来搭建相关界面,并对界面按钮功能进行介绍。在wps中,设计操作界面主要有两种方式:一是利用wps表格与一些图片或控件来进行搭建,这样制作的界面发挥空间较大,可以制作出比较好看的操作界面。一是利用wps窗体来进行搭建,由于wps窗体自身的局限性,制作出的界面虽功能健全,但样式单一。在本次案例中,将使用wps窗体搭建一个简单的操作界面。
2025-02-17 13:50:40
1069
原创 JS宏进阶:递归练习
这段代码使用了递归和回溯的思想,动态生成了所有可能的排列。递归函数通过拆分问题(当前部分和剩余部分),逐步构建解,并利用终止条件结束递归。
2025-02-16 14:13:49
842
原创 JS宏小案例:多层数据透视
superPivot是一个灵活而强大的多层透视工具,适用于对二维数组进行复杂的分组和聚合操作。通过巧妙利用嵌套对象和自定义处理函数,它可以满足多种数据分析场景的需求。它与我们今天想要制作的工具中需要编写的透视函数比较类似,因此这里发出来供大家参考使用。希望大家玩的愉快。
2025-02-15 14:55:59
539
原创 JS宏实例:数据透视工具的制作(一)
之前发布了JS宏基础以及JS宏进阶专栏,其中讲述了在WPS中使用WPS自带的编辑器,利用JS来处理表格数据的一些基础及进阶相关的知识。今天,我们利用这些知识来做一个相对复杂的案例——模拟并增强excel中的数据透视表的功能,通过这个案例来巩固我们所学的知识。
2025-02-15 14:34:19
930
原创 JS宏案例:表格转换
二维表与一维表的转换,在日常工作中是非常常见的。如果直接通过excel的公式来处理,不仅比较困难,而且对于数据量大的表格来说,或者是有多张excel表都需要做同样的操作时就更困难了。这时,JS宏的魅力就出现了,我们只需要花几十分钟编写好代码,之后遇到类似的表格都可一键执行。
2025-02-14 14:04:35
692
原创 为deepseek搭建本地页面
搭建页面的框架多种多样,例如python中的flask、django等,再如java中的spring框架等等。你使用什么语言、什么框架都无所谓,重要的是设计思路。这里UP以node.js中的express框架为例来为deepseek搭建一个本地页面。
2025-02-13 15:20:25
1176
原创 JS宏进阶:Promise与微任务队列
宏任务:包括整体脚本、setTimeout等全局函数微任务:包括 Promise 回调、MutationObserver 等注意:在WPS编辑器中,setTimeout 与 MutationObserver(监听 DOM 树的更改的对象)均不支持。Promise对象是JavaScript中处理异步操作的重要工具,它提供了统一的API,使得各种异步操作都可以用同样的方法进行处理。通过Promise对象,我们可以更方便地处理异步操作的结果和错误,实现更加复杂和灵活的异步编程逻辑。
2025-02-13 10:56:25
1114
原创 deepseek本地部署
DeepSeek是一个开源的人工智能平台,旨在提供高效、智能和包容性的交互体验。它可以执行复杂的任务,包括理解和回答问题,以及进行创造性思考和学习。它通过多种方式互动,比如多模态对话(文字、图像、视频等)和自我监督学习,来提高理解和生成能力。
2025-02-12 18:57:59
1477
原创 JS宏进阶:全局函数fetch
总的来说,fetch函数是一个功能强大、易于使用的HTTP请求API。它提供了丰富的配置选项和响应处理方法,能够满足大多数网络请求的需求。通过合理使用fetch API,可以简化网络请求的代码,提高开发效率。使用它,就能告别繁琐的XHR的写法啦~~~。
2025-02-12 18:37:05
2127
原创 JS宏进阶:在线表格的接口
首先,随意打开或新建一个在线表格,然后点击菜单栏的“效率·····>高级开发·····>AirScript脚本编辑器”打开如下所示页面:随后,点击脚本编辑器右上方的问号,再在切换的页面中点击“文档中心”按钮,即可进入官方文档界面,如下图所示:进入到上图所示界面后,在左边目录栏中,有一个脚本令牌,接口文档就在其中。
2025-02-11 09:59:24
1120
原创 JS宏进阶:补充知识点arguments关键字
arguments关键字是JavaScript中用于处理函数参数的一个强大工具,特别是在参数个数不确定或需要模拟函数重载时非常有用。然而,随着ES6(ECMAScript 2015)中剩余参数的引入,arguments的使用场景逐渐减少。剩余参数是一个真正意义上的数组,支持所有数组方法,有着更简洁、更现代的语法来处理不定长参数,推荐在新的代码中使用。换句话说,arguments已经过时了,现在大家都用更好用的剩余参数。
2025-02-10 14:56:14
676
原创 JS宏进阶:XMLHttpRequest对象
XMLHttpRequest简称XHR,它是一个可以在JavaScript中使用的对象,用于在后台与服务器交换数据,实现页面的局部更新,而无需重新加载整个页面,也是Ajax(Asynchronous JavaScript and XML)技术的核心组成部分。通过XHR对象,开发者可以在不干扰用户当前操作的情况下,向服务器请求数据,并动态更新网页内容。XMLHttpRequest对象是一种强大的工具,用于在后台与服务器交换数据,实现页面的局部更新。
2025-02-10 10:41:01
1466
原创 JS宏进阶:闭包与代理
闭包是一个函数及其相关的引用环境的组合。在JavaScript中,当一个函数在另一个函数的内部定义,并且这个内部函数引用了外部函数的变量时,就形成了一个闭包。即使外部函数已经执行完毕,内部函数仍然可以访问外部函数的变量。JS中代理是ES6(ECMAScript 2015)中引入的一个新特性。它提供了一种机制,通过该机制可以拦截和修改对目标对象的访问和操作。target:被代理的目标对象。handler:定义代理行为的对象。处理器对象中可以定义各种陷阱函数(trap),用于拦截对目标对象的操作。
2025-01-28 10:17:22
1368
1
原创 JS宏进阶:控件与事件
在JS宏中,控件与事件是创建用户交互式应用程序的核心概念。与浏览器中的控件和事件有异曲同工之妙,在浏览器中,事件是用户与网页界面交互时发生的动作,而JS宏中,则是用户与WPS表格、文字等交互时发生的动作。控件是窗体上用于显示数据或接受用户输入的元素,而窗体是控件的容器,用于组织和显示用户界面。一个典型的窗体包含多个控件,这些控件共同为用户提供某种功能或信息展示。窗体可以基于用户操作显示或隐藏,可以承载其他控件如菜单、工具栏等。文本框(TextBox):用户可以在其中输入相关文本标签(Label):用于显示静
2025-01-27 11:49:49
1226
原创 JS面相对象小案例:自定义安全数组
_array;// 约定的私有属性注意:上面代码中的 # 表示定义一个私有属性或方法(也就是说,只能在内部访问,不能在类的外部进行访问。),并不是所有的编译器都支持。因为它是ECMAScript 2022新增的语法。
2025-01-26 16:02:07
964
原创 JS宏进阶:alert、InputBox和MsgBox
= "string") throw new TypeError("text/color/aligin不是字符串");== "number") throw new TypeError("fontSize不是字符串");return p;上述示例函数中,text参数,表示显示的文本,color表示文本显示时的颜色,align是文本的对齐方式,fontSize是文本的大小。
2025-01-25 13:46:58
1400
原创 JS宏进阶:模块化编程
总的来说,JavaScript 模块化编程是一种将代码分割成独立、可复用的模块的方法。这种方法有助于提高代码的可维护性、可读性和可重用性。模块化编程的核心思想是将功能相关的代码组织在一起,而将无关的代码分离,从而降低代码的复杂性。在WPS编辑器中,模块化可以通过多种方式实现,其中最为推荐的是IIFE的写法,因为这种写法作用域完全封闭,比较安全。// 私有变量// 公有方法// 输出: 42// undefined,因为 Symbol 是唯一的,外部无法访问。
2025-01-22 11:15:06
1270
原创 JS宏进阶:协程
async关键字用于声明一个异步函数,该函数会隐式地返回一个Promise对象,在异步函数内部,可以使用awite关键字来等待一个Promise对象的结果。在JavaScript中,协程(Coroutine)是一种特殊的函数,它能够在执行到某个点时暂停,并在以后恢复执行。通过生成器函数和async/await语法,JavaScript实现了协程的功能,使得异步代码看起来更像同步代码,提高了代码的可读性和可维护性。特别是在WPS编辑器中。异步函数是基于Promise对象的,它使得异步代码看起来更像同步代码。
2025-01-21 11:42:01
1401
原创 JS宏实例:隐藏窗口读取数据与简单的数据处理
if(!(this instanceof MyClass)) throw new Error("只能通过new来实例化");在这个案例中,我们接触到了新的API:OLE对象,使用它,在打开工作表时就能隐藏工作簿窗口了;通过工作表对象的buttons方法,可以创建按钮,随后通过OnAction属性来绑定对应的事件(点击时会执行的动作),掌握它就可以把你的宏文件发给不懂代码的小白使用了。
2025-01-20 17:19:48
1208
原创 JS宏进阶:集合数据结构
JavaScript中的集合以其唯一性保证、高效的操作、易于使用、丰富的API以及广泛的应用场景而著称。在需要处理唯一性约束、去重或进行高效查找、添加和删除操作时,集合是一个非常合适的选择。
2025-01-20 11:28:00
1180
原创 JS宏进阶:正则表达式的使用
newRegExp()提供了一种动态创建正则表达式的方法,而正则表达式对象的方法(如test和exec)以及字符串对象的方法(如match、replace等)则提供了丰富的操作手段来处理和匹配字符串。理解这些方法和标志,可以大大提高你在JavaScript中处理字符串的效率和能力。
2025-01-19 12:55:28
1198
原创 JS宏进阶:正则表达式介绍
大多数字符仅能够描述它们本身,如字母、数字等。例如a匹配a,1匹配1等。具有特殊含义的字符,可以极大提高正则表达式的灵活性和匹配功能。总结如下符号解释英文状态下的小数点,代表除换行符之外的任何单个字符。英文状态下的星号,表示匹配前面的字符或子表达式零次或多次。英文状态下的加号,表示匹配前面的字符或子表达式一次或多次。?英文状态下的问号,表示匹配前面的字符或子表达式零次或一次。{n}n代表数字,用花括号括起来表示前面的字符或子表达式恰好出现n次。{n,m}
2025-01-18 16:43:29
1025
原创 JS宏进阶:Map与Object
相对于Object而言,他没有原型(也就是不能通过原型链的方式添加方法),但也存在自身的优势,某些场景,new Map 可能比 new Object 更好用。总的来说,new Map( ) 与 new Object( ) 都是JS中非常重要的对象,学会并理解他们的使用场景和优势,可以帮助你在开发中选择最合适的数据结构,提高代码的效率和可维护性。2.5、freeze:全方位冻结对象,也就是使对象变得不可扩展,标记所有现有属性为不可配置,并将所有现有属性冻结(即不可写)。对于普通对象,该方法通常返回对象本身。
2025-01-18 11:20:45
1015
原创 JS宏实例:自创FS对象读取文本文件或CSV文件数据
既然JS宏中缺少相关的报错信息,那么我们可以自己定义。//定义报错类型FileNotFound//定义报错类型文件已存在有了我们定义的两种报错,我们就要运用到接下来的开发之中。例如:找不到文件,我们可以调用FileNotFound来抛出异常。//参数验证//添加参数类型提示//在创建文件夹之前,先判断路径是否存在,如果存在则无法创建try{//递归创建或文件夹已经存在会报错//该报错,一定是不能创建多层文件夹导致的注意:上述方法时FS中的实例方法。
2025-01-17 17:24:02
2284
1
原创 JS宏进阶:JS宏中的文件系统FileSystem
虽然该对象中的某些方法存在一些bug,但总的来说,操作文本文件或者csv文件,比文件流好用许多。对于JS宏来说,已经够用了,大家就将就将就。祝大家玩的开心。
2025-01-16 19:41:00
1357
原创 JS宏进阶:this专讲
this的值是在函数被调用时确定的,而不是在函数被定义时确定的。this的绑定规则取决于函数的调用方式(普通调用、方法调用、构造函数调用、箭头函等)。使用callapply和bind可以显式地设置this的值。箭头函数不绑定自己的this,而是继承外层作用域的this。ES6类中this主要用于引用实例对象,使得你可以在构造函数和方法中访问和操作实例的属性。普通对象中,this是一个强大的工具,允许方法访问和操作对象的属性。然而,this的行为可能会根据上下文(如箭头函数的使用)而变化。
2025-01-16 09:42:26
1288
原创 JS宏进阶: 工厂函数与构造函数
上述示例,是一个似曾相识的示例。因为在“函数、对象和类(一)”这一章节中简单讲解this关键字时的一个示例。在这个例子中,Person是一个构造函数,它接受两个参数name和age,并将它们赋值给新对象的属性。同时,它还定义了一个方法sayHello。工厂函数和构造函数都是JavaScript中用于创建对象的常见模式。它们各有特点,适用于不同的场景。选择哪种模式主要取决于项目的具体需求和代码的复杂性。在实际开发中,可以根据需要灵活选择使用哪种模式来创建对象。
2025-01-15 17:19:38
1576
在JS中玩python中的numpy
2025-02-28
npm安装包遇到的问题
2025-02-12
TA创建的收藏夹 TA关注的收藏夹
TA关注的人