R基础练习题

原创 2015年11月19日 19:33:59
  • 内积和外积:
    两个向量的内积,即数量积或点积;若x,y是相同长度的向量x%*%y表示内积;R函数crossprod(x,y)也表示作内积,相当于t(x)%*%y,函数tcrossprod(x,y),相当于x%*%t(y),此函数x,y也可以为矩阵。

    两个向量的外积,即向量级或叉积,x%o%y表示外积;
    例:

x <- c(1:4)
y <- c(3:6)
x%*%y
     [,1]
[1,]   50
crossprod(x,y)
     [,1]
[1,]   50
 x%o%y
     [,1] [,2] [,3] [,4]
[1,]    3    4    5    6
[2,]    6    8   10   12
[3,]    9   12   15   18
[4,]   12   16   20   24
 tcrossprod(x,y)
     [,1] [,2] [,3] [,4]
[1,]    3    4    5    6
[2,]    6    8   10   12
[3,]    9   12   15   18
[4,]   12   16   20   24

一般外积函数outer(),它等价于x%o%y
outer()的一般调用格式为
outer(x,y,fun=”*”),其中x,y为矩阵或向量,fun默认为乘法运算。函数outer()在绘制三维曲面时非常有用,它可生成一个x和y的网格。

  outer(x,y)
      [,1] [,2] [,3] [,4]
[1,]    3    4    5    6
[2,]    6    8   10   12
[3,]    9   12   15   18
[4,]   12   16   20   24

outer()函数在三维视图的应用:

x1 <- seq(-5,5,0.25)
x2 <- seq(-2,2,0.1)
f <- function(x,y) x^2+50*cos(y)
z <- outer(x1,x2,f)
persp(x1,x2,z)

三维视图

  • 矩阵运算
    A <- matrix(c(35,4,12,2,14,11,9,5,11,3,38,12,1,0,4,2),4)
    det(A)#行列式
    solve(A) #矩阵A的逆
    crossprod(A,A) #t(A)%*%A
    tcrossprod(A,A) #A%*%t(A)
    solve(A)%*%A #A^(-1)%*%A
    solve(A)%*%A-A%*%solve(A)

    > det(A)
    [1] 9020
    > solve(A)
             [,1]        [,2]         [,3]         [,4]
    [1,]  0.034811530 -0.03680710 -0.004545455 -0.008314856
    [2,] -0.007095344  0.09667406 -0.018181818  0.039911308
    [3,] -0.020399113  0.02793792  0.072727273 -0.135254989
    [4,]  0.105321508 -0.37250554 -0.386363636  1.220066519
    
    crossprod(A,A)
         [,1] [,2] [,3] [,4]
    [1,] 1389  652  877   87
    [2,]  652  423  589   60
    [3,]  877  589 1718  187
    [4,]   87   60  187   21
    > tcrossprod(A,A)
         [,1] [,2] [,3] [,4]
    [1,] 1543  327  968  274
    [2,]  327  146  261   99
    [3,]  968  261 1685  533
    [4,]  274   99  533  177
    A%*%t(A)
          [,1] [,2] [,3] [,4]
    [1,] 1543  327  968  274
    [2,]  327  146  261   99
    [3,]  968  261 1685  533
    [4,]  274   99  533  177
    solve(A)%*%A
              [,1]         [,2]          [,3] [,4]
    [1,]  1.000000e+00 2.602085e-17  2.081668e-17    0
    [2,] -4.163336e-17 1.000000e+00 -2.775558e-17    0
    [3,]  0.000000e+00 0.000000e+00  1.000000e+00    0
    [4,]  0.000000e+00 4.440892e-16  0.000000e+00    1
    
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

K&R 练习题 【每日一题】1-21

//write a program entab that replace strings of blanks by the minimum number of tabs and blanks to a...

电子政务R9练习题

  • 2012-12-15 11:51
  • 396KB
  • 下载

统计R练习题

  • 2012-04-22 21:06
  • 16KB
  • 下载

Java语言程序设计基础篇第十版第一章编程练习题答案

Java语言程序设计基础篇第十版第一章编程练习题答案详解

项目基础知识练习题汇总

  • 2013-06-07 10:45
  • 107KB
  • 下载

cad基础练习题

  • 2014-03-01 22:00
  • 33.38MB
  • 下载

java基础4--面向对象下(几道练习题)

继承、抽象类和接口的几道习题。

基础练习题

  • 2014-06-17 15:44
  • 1.30MB
  • 下载

50道JAVA基础编程练习题

  • 2013-04-22 07:56
  • 100KB
  • 下载

Java 基础练习题(50)

1、题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? package com.hz.te...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)