机器学习数据分析软件:Octave

2023-11-19

最近学习了Octave数学软件,这个软件类似于MATLAB,但是操作要比MATLAB简单很多,上手快,对数据分析有很大的帮助,所以这里就简单的把部分练习的代码放在这里,如果你想实现一下,可以按照代码内容来,或者自己编写

GNU Octave, version 7.1.0
Copyright (C) 1993-2022 The Octave Project Developers.
This is free software; see the source code for copying conditions.
There is ABSOLUTELY NO WARRANTY; not even for MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE.  For details, type 'warranty'.

Octave was configured for "x86_64-w64-mingw32".

Additional information about Octave is available at https://www.octave.org.

Please contribute if you find this software useful.
For more information, visit https://www.octave.org/get-involved.html

Read https://www.octave.org/bugs.html to learn how to submit bug reports.
For information about changes from previous versions, type 'news'.

>> 1+1
ans = 2
>> 2_4
ans = 24
>> 2-4
ans = -2
>> 2*4
ans = 8
>> 2^3
ans = 8
>> 1 == 2 % false
ans = 0
>> 1 ~= 2
ans = 1
>> 1 && 0 % and
ans = 0
>> 1 || 0 % or
ans = 1
>> xor(1,0)
ans = 1
>> a = 3;
>> disp(a)
3
>> disp(sprintf('2 decimals: %0.2f',a))
2 decimals: 3.00
>> format long
>> a
a = 3
>> b=pi;
>> b
b = 3.141592653589793
>> format short
>> b
b = 3.1416


>> A = [1 2;3 4;5 6]
A =

   1   2
   3   4
   5   6

>> A=[1 2;
3 4;
5 6]
A =

   1   2
   3   4
   5   6

>> v = 1:0.1:2
v =

 Columns 1 through 10:

    1.0000    1.1000    1.2000    1.3000    1.4000    1.5000    1.6000    1.7000    1.8000    1.9000

 Column 11:

    2.0000

>> v = 1:6
v =

   1   2   3   4   5   6

>> ones(2,3)
ans =

   1   1   1
   1   1   1

>> 2*ones(3,3)
ans =

   2   2   2
   2   2   2
   2   2   2

>> zeros(1,3)
ans =

   0   0   0

>> rand(1,5)
ans =

   0.388980   0.041283   0.117873   0.078976   0.599495

>> randn(2,3) %gaosi
ans =

   0.814927   0.041009  -0.066768
  -0.392299  -0.322274   0.081502




>> w = -6 + sqrt(10)*(randn(1,10000));
>> hist(w)
>> hist(w,100)
>>  eye(10) %E function
ans =

Diagonal Matrix

   1   0   0   0   0   0   0   0   0   0
   0   1   0   0   0   0   0   0   0   0
   0   0   1   0   0   0   0   0   0   0
   0   0   0   1   0   0   0   0   0   0
   0   0   0   0   1   0   0   0   0   0
   0   0   0   0   0   1   0   0   0   0
   0   0   0   0   0   0   1   0   0   0
   0   0   0   0   0   0   0   1   0   0
   0   0   0   0   0   0   0   0   1   0
   0   0   0   0   0   0   0   0   0   1

>> size(A)
ans =

   3   2

>> size(A, 1)
ans = 3
>> length(A)
ans = 3
>> pwd
ans = C:\Users\Administrator
>> ls
 AppData
'Application Data'
 Contacts
 Cookies
 Desktop
 Documents
 Downloads
 Favorites
 IntelGraphicsProfiles
 Links
'Local Settings'
 Music
'My Documents'
 NTUSER.DAT
 NTUSER.DAT{95de2aa9-7b20-11e9-87bd-fbd6aa594282}.TM.blf
 NTUSER.DAT{95de2aa9-7b20-11e9-87bd-fbd6aa594282}.TMContainer00000000000000000001.regtrans-ms
 NTUSER.DAT{95de2aa9-7b20-11e9-87bd-fbd6aa594282}.TMContainer00000000000000000002.regtrans-ms
 NetHood
 Pictures
 PrintHood
 PycharmProjects
 Recent
'Saved Games'
 Searches
 SendTo
 Templates
 Videos
 ntuser.dat.LOG1
 ntuser.dat.LOG2
 ntuser.ini
''$'\343\200\214\345\274\200\345\247\213\343\200\215\350\217\234\345\215\225'
>> cd C:/Users/Administrator/Desktop
>> load data1.txt
error: load: unable to find file data1.txt
>> load data1.dat
>> load('data1.dat')
>> who
Variables visible from the current scope:

A      a      ans    b      data1  v      w

>> whos
Variables visible from the current scope:

variables in scope: top scope

  Attr   Name        Size                     Bytes  Class
  ====   ====        ====                     =====  =====
         A           3x2                         48  double
         a           1x1                          8  double
         ans         1x22                        22  char
         b           1x1                          8  double
         data1      97x2                       1552  double
         v           1x6                         24  double
         w           1x10000                  80000  double

Total is 10230 elements using 81662 bytes

>> size(data1)
ans =

   97    2
   
>> clear w
>> who
Variables visible from the current scope:

A      a      ans    b      data1  v

>> v = data1(1:10)
v =

   6.1101   5.5277   8.5186   7.0032   5.8598   8.3829   7.4764   8.5781   6.4862   5.0546

>> save hello.mat data1.dat
warning: save: no such variable 'data1.dat'
>> save a.txt v -ascii




>> A(3,2)
ans = 6
>> A(2,:)
ans =

   3   4

>> A([1 3],:)
ans =

   1   2
   5   6

>> A
A =

   1   2
   3   4
   5   6

>> A(:,2)=[10,11,12]
A =

    1   10
    3   11
    5   12

>> A = [A,[100,101,102]]
error: horizontal dimensions mismatch (3x2 vs 1x3)
>> A = [A,[100;101;102]]
A =

     1    10   100
     3    11   101
     5    12   102

>> A(:)
ans =

     1
     3
     5
    10
    11
    12
   100
   101
   102

>>
>> A = [1 2; 3 4]
A =

   1   2
   3   4

>> B = [5 6;7 8]
B =

   5   6
   7   8

>> C = [A B]
C =

   1   2   5   6
   3   4   7   8

>> C = [A; B]
C =

   1   2
   3   4
   5   6
   7   8

>> size(C)
ans =

   4   2

>> size(C,2)
ans = 2
>> size(C,1)
ans = 4
>> A * B
ans =

   19   22
   43   50

>> A .* B
ans =

    5   12
   21   32

>> A .^ 2
ans =

    1    4
    9   16

>> 1 ./ A
ans =

   1.0000   0.5000
   0.3333   0.2500

>> log(A)
ans =

        0   0.6931
   1.0986   1.3863

>> exp(A)  % ex
ans =

    2.7183    7.3891
   20.0855   54.5982

>> abs(A) % 求绝对值
ans =

   1   2
   3   4

>> -A
ans =

  -1  -2
  -3  -4

>> A + ones(length(B),1)
ans =

   2   3
   4   5

>> A
A =

   1   2
   3   4

>> A + 1
ans =

   2   3
   4   5

>> A' % zhuanzhi
ans =

   1   3
   2   4

>> max(A)
ans =

   3   4

>> [val, ind]=max(A)
val =

   3   4

ind =

   2   2

>> find(A<3)
ans =

   1
   3

>> A =magic(6)
A =

   35    1    6   26   19   24
    3   32    7   21   23   25
   31    9    2   22   27   20
    8   28   33   17   10   15
   30    5   34   12   14   16
    4   36   29   13   18   11

>> [r , c] = find(A <= 3)
r =

   2
   1
   3

c =

   1
   2
   3

>> A
A =

   35    1    6   26   19   24
    3   32    7   21   23   25
   31    9    2   22   27   20
    8   28   33   17   10   15
   30    5   34   12   14   16
    4   36   29   13   18   11

>> sum(A)
ans =

   111   111   111   111   111   111

>> prod(A) % product
ans =

   3.1248e+06   1.4515e+06   2.7332e+06   3.1856e+07   2.9733e+07   3.1680e+07

>> floor(A)  % 向下取整
ans =

   35    1    6   26   19   24
    3   32    7   21   23   25
   31    9    2   22   27   20
    8   28   33   17   10   15
   30    5   34   12   14   16
    4   36   29   13   18   11

>> ceil(A) % 向上取整
ans =

   35    1    6   26   19   24
    3   32    7   21   23   25
   31    9    2   22   27   20
    8   28   33   17   10   15
   30    5   34   12   14   16
    4   36   29   13   18   11

>> max(rand(3),rand(3))
ans =

   0.8349   0.4311   0.8388
   0.8539   0.5075   0.7513
   0.9351   0.6399   0.6021

>> max(A,[],1)
ans =

   35   36   34   26   27   25

>> max(A,[],2)
ans =

   35
   32
   31
   33
   34
   36

>> max(max(A))
ans = 36
>> max(A(:))
ans = 36
>>
>> sum(A,1)
ans =

   111   111   111   111   111   111

>> sum(A,2)
ans =

   111
   111
   111
   111
   111
   111

>> sum(sum(A.*eye(6)))
ans = 111
>> sum(sum(A.*flipud(eye(6))))
ans = 111
>> flipud(eye(6))
ans =

Permutation Matrix

   0   0   0   0   0   1
   0   0   0   0   1   0
   0   0   0   1   0   0
   0   0   1   0   0   0
   0   1   0   0   0   0
   1   0   0   0   0   0

>> pinv(A)  % 伪逆矩阵
ans =

   1.1532e-02  -3.8622e-02   2.5421e-02   5.3595e-03  -1.3931e-02   1.9248e-02
   2.2731e-03  -2.0103e-02   1.6162e-02   1.4619e-02  -3.2449e-02   2.8508e-02
  -8.1436e-03   3.0447e-03  -1.5088e-02   4.2021e-03   2.7736e-02  -2.7423e-03
   5.3971e-02  -4.1708e-02  -1.5849e-03   6.0143e-02  -6.6400e-02   4.5879e-03
  -4.0937e-02   2.3106e-02   2.8508e-02  -5.3282e-02   3.5452e-02   1.6162e-02
  -9.6868e-03   8.3292e-02  -4.4409e-02  -2.2032e-02   5.8600e-02  -5.6755e-02

>> inv(A)
warning: matrix singular to machine precision, rcond = 4.80096e-18
ans =

   3.7530e+14   4.7714e-02  -3.7530e+14  -3.7530e+14   9.3750e-02   3.7530e+14
   3.7530e+14   6.6233e-02  -3.7530e+14  -3.7530e+14   6.2500e-02   3.7530e+14
  -1.8765e+14  -4.0123e-02   1.8765e+14   1.8765e+14  -1.5625e-02  -1.8765e+14
  -3.7530e+14  -1.2804e-01   3.7530e+14   3.7530e+14  -1.5625e-01  -3.7530e+14
  -3.7530e+14  -6.3230e-02   3.7530e+14   3.7530e+14  -6.2500e-02  -3.7530e+14
   1.8765e+14   1.2646e-01  -1.8765e+14  -1.8765e+14   1.0938e-01   1.8765e+14

>> pinv(A)*A 
ans =

   0.777778  -0.222222   0.111111   0.222222   0.222222  -0.111111
  -0.222222   0.777778   0.111111   0.222222   0.222222  -0.111111
   0.111111   0.111111   0.944444  -0.111111  -0.111111   0.055556
   0.222222   0.222222  -0.111111   0.777778  -0.222222   0.111111
   0.222222   0.222222  -0.111111  -0.222222   0.777778   0.111111
  -0.111111  -0.111111   0.055556   0.111111   0.111111   0.944444

>>
>>
>> t = [1 2 3 4 5 6 7 8 9]
t =

   1   2   3   4   5   6   7   8   9

>> y1= sin(pi*4*t)
y1 =

 Columns 1 through 7:

  -4.8984e-16  -9.7969e-16  -1.4695e-15  -1.9594e-15  -2.4492e-15  -2.9391e-15  -3.4289e-15

 Columns 8 and 9:

  -3.9187e-15  -4.4086e-15

>> plot(t,yi)
error: 'yi' undefined near line 1, column 8
>> plot(t,y1)
>> hold on;
>> plot(t,y1,'r')
>> xlabel('time')
>> ylabel('value')
>> print -dpng 'myFirstPlot.png' % 图片储存
>> close
>> figure(1);plot(t,y1)
>> figure(2);plot(t,y1)
>> subplot(1,2,1)
>> plot(t,y1)
>> subplot(1,2,2)
>> plot(t,y1)
>> axis([0.5 1 -1 1])
>> iamgesc(A)
error: 'iamgesc' undefined near line 1, column 1
>> imagesc(A)
>> imagesc(A),colorbar,colormap gray;
>> close



>> pwd
ans = C:\Users\Administrator\Desktop
>> squarThisNumber(10)
error: 'squarThisNumber' undefined near line 1, column 1
>> squareThisNumber(10)
ans = 100

squareThisNumber.m函数:
注意:文件的命名应该和函数名相同,否则无法调用函数!!

function y = squareThisNumber(x)

y = x^2;

costFunctionJ.m函数:

function j = costFunctionJ(X, y, theta)

% X 是设计函数,就是训练样本数
% y 分类标签

m = size(X, 1);  % 计算训练样本个数(行数)
prediction = X * theta;
sqrErrors = (prediction - y).^2;

J = 1/(2*m)*sum(sqrErrors); %主函数

在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

机器学习数据分析软件:Octave 的相关文章

  • Shell——脚本执行命令和控制语句

    前言 在正常情况下 shell按顺序执行每一条语句 直至碰到文件尾 if选择结构示例 if后面紧跟判断条件 then后面是执行语句 fi是结束标志 多重if结构示例 case多选结构 通常用于在一系列模式中匹配某个变量的值 命令 只在cas
  • CH7-查找

    文章目录 1 查找的基本概念 2 线性表的查找 2 1 顺序查找 线性查找 算法2 1 0 类型定义 算法2 1 1 顺序查找 算法2 1 2 改进后的顺序查找 性能分析 2 2 折半查找 二分或对分查找 算法2 2 1 非递归算法 算法2

随机推荐

  • 基于容器PaaS云技术平台方案

    本文以容器技术建设 PaaS 平台即服务 云平台的解决方案为例 分析其如何实现系统资源的集中管理 动态分配 监控 共享和调度 如何实现应用的统一部署和业务连续性保障 实现多数据中心的高可用 推动系统架构及流程的调整 应对云计算时代所带来的变
  • 分析研究<<一战到底>>节目规则演变

    分析研究 lt lt 一战到底 gt gt 节目规则演变 一 研究范围 江苏卫视2012年3月2日推出益智答题类节目 研究时间截止 2014年1月4日星期六 二 规则演变 1 初始规则 2012年3月2日规则 1 每期参加节目的有11人 分
  • 01-ZooKeeper快速入门

    1 Zookeeper概念 Zookeeper是Apache Hadoop项目下的一个子项目 是一个树形目录服务 zookeeper翻译过来就是 动物园管理员 它是用来管理Hadoop 大象 Hive 蜜蜂 Pig 小猪 的管理员 简称ZK
  • C语言程序设计 现代方法(第2版)电子书pdf下载

    C语言程序设计 现代方法 第2版 下载链接 https pan baidu com s 1XIKYGAxGhRTscgibAj3kgQ 提取码获取方式 关注下面微信公众号 回复关键字 1129
  • 关于猜数字游戏以及关机指令

    这几天学习到了一些没有接触过的东西 因此在这里记录下 首先是猜数字游戏 这个小程序特别简单 只要知道相关的几个关键函数就能明白 它的主要函数有rand 返回随机数 以及srand 用来设置随机数的起点 以及time 代码如下 include
  • 【QTUM量子链中国区】零撸180元攻略

    QTUM量子链中国区 于2020年1月7日正式上线 实名认证 无需上传 通过后赠送体验矿机一台 周期30天 总产量10QTUM 价值130元 进入官方QQ群可以目测到 这个新出的项目非常火爆 问题是 QTUM量子链中国区和著名的QTUM量子
  • ABAP 参照TR创建副本TR并释放

    简介 一般项目中为了后期传输的统一性 都会采用传输副本请求的方式来避免出现一个需求有过多的工作台TR的情况 但是常规的创建副本请求的方式不是很便捷 因此本文介绍一种参照已有TR创建副本TR的样例 效果 代码 Report YSTMS
  • Ljavax/validation/ParameterNameProvider

    利用宝塔部署项目war包出现 Ljavax validation ParameterNameProvider 的错误 初始化org springframework validation beanvalidation OptionalVali
  • day08-Linux自有服务&软件包管理

    自有服务 即不需要用户独立去安装的软件的服务 而是当系统安装好之后就可以直接使用的服务 内置 学习目标 1 了解systemctl命令用途 2 掌握使用systemctl开启 关闭 重启服务 3 了解常见自有服务ntpd firewalld
  • Linux基础学习

    安装gcc 1 apt get命令是debain Linux发新版的APT软件包管理工具 dabian ubuntu deepin等Linux系统通过以下命令 安装gcc Shell输入sudo apt get install gcc命令
  • 4--一元多项式的乘法与加法运算

    个人题解 include
  • JS判断数组中是否有重复的元素

    function isRepeatId arr arr 100 200 400 200 if arr length 1 若元素数为1一定不重复 直接返回 return false var hash for let i in arr 遍历ar
  • C语言的面向对象的封装方法

    1 3 1 变长结构体的实现 以上文数据结构C语言 双向链表及其实现的双向环链为例 具体封装方法如下 在上述双向环链中节点中不可避免地引入了数据指针 void data占用了8byte的空间 那么能不能在链表每个节点中省去这8byte的空间
  • 自下而上分析方法-算符优先,LR(0),SLR,LR(1),LALR大全

    文章目录 自下而上分析法 一 规范规约 相关定义 短语 直接短语 句柄 素短语 最左素短语 语法树表示 示例 规范规约 二 语法分析器 三 算符优先分析算法 算符文法 1 算符优先文法 2 FIRSTVT P 和LASTVT P 1 FIR
  • 金晟富:5.24黄金原油最新行情涨跌分析,黄金原油操作建议

    前言导读 新的一天 新的开始 新的机会 投资路并非坦途 我的文字不华丽 但是却很真诚 财富自由首先是脑袋的距离 然后才是口袋的距离 出现亏损应当去寻找原因 去改变目标处境 不然将会陷入恶性循环 不断的亏损 不断的找理由 赚钱的单拿不住 亏钱
  • docker official tutorial, unable to build images.docker官方教程无法生成镜像

    windows docker 根据dockder的官方tutorial教程 docker build t getting started 这一步无法成功 一直是如下报错 21 53 error An unexpected error occ
  • element-plus 关于按需加载的问题

    完整的引入没什么说的 import createApp from vue import ElementPlus from element plus import element plus lib theme chalk index css
  • 用Python调用OpenAI API做有趣的事

    GPT 迭代过程概要表 版本 发布时间 训练方案 参数量 是否开放接口 GPT GPT 1 2018 年 6 月 无监督学习 1 17 亿 是 GPT 2 2019 年 2 月 多任务学习 15 亿 是 GPT 3 2020 年 5 月 海
  • 数据库2:创建表(头歌云课)

    任务描述 相关知识 如何在指定数据库中创建表 编程要求 测试说明 任务描述 本关任务 在数据库中 创建一个表 相关知识 我们知道数据库就是存储数据的地方 那数据库中的数据到底存放在哪里呢 数据库中的数据是存放在数据库中的一张一张表 你可以想
  • 机器学习数据分析软件:Octave

    最近学习了Octave数学软件 这个软件类似于MATLAB 但是操作要比MATLAB简单很多 上手快 对数据分析有很大的帮助 所以这里就简单的把部分练习的代码放在这里 如果你想实现一下 可以按照代码内容来 或者自己编写 GNU Octave