###################################################

问题:生成、操作矩阵   18.4.27

怎么生成矩阵 matrix、,,及其相关操作 ???

解决方案:

D = d = matrix(nrow = 3,ncol = 3)     #生成一个空矩阵,再填写内容。

a1 = c(1,4,2);   a2 = c(2,2,3);   a3 = c(3,1,0);

D[,1] = a1; D[,2] = a2; D[,3] = a3

d[1,] = a1; d[2,] = a2; d[3,] = a3;  #D 与 d 互为转置,证明向量无行列之分。。

DD = c(a1,a2,a3); length(DD)   #$生成一个向量,是三个向量的总长

mat1 = matrix(nrow = 8,ncol = 4);   #得到8x4的矩阵,所有元素为NA

a_mat = matrix(data=a,nrow=4,byrow = T); a_mat  #用向量 a 生成矩阵,长度不够循环补充。

mat2 = as.matrix(cbind(c1,c2,c3,c4))  # as.matrix, is.matrix  很有用

#相关操作:

colnames(mat1) = c("**","**","**","**");   #设置已有矩阵的列名字。。colnames(mat1)查看列名

rownames(mat1) = c();  #设置行名,,rownames(mat1)查看行名

mat1[i,j];

mat1[,c(2,4)];

mat1["name",];   #返回名为 “name” 的行

#矩阵特有运算: 转置: t(mat1);   矩阵乘法: mat1 %*% mat2;   求逆: solve(mat1);

#函数rowSums(mat1), colSums(mat1), rowMeans(mat1), colMeans(mat1) 分别可以计算行总和,行均值,列总和,列均值。

讨论扩展:

另请参阅:

###################################################

问题:生成、操作数组   18.4.27

怎么生成数组 array、,,及其相关操作 ???

解决方案:

a<-array(rep(1:3,each=3),dim=c(3,3))

数组函数是array(),语法是:array(dadta, dim),其中data必须是同一类型的数据,dim是各维的长度组成的向量。

数组:一维数据是向量,二维数据是矩阵,数组是向量和矩阵的直接推广,是由三维或三维以上的数据构成的。

讨论扩展:

另请参阅:

R: matrix & array 生成、操作矩阵、数组:的更多相关文章

  1. R语言编程艺术#02#矩阵(matrix)和数组(array)

    矩阵(matrix)是一种特殊的向量,包含两个附加的属性:行数和列数.所以矩阵也是和向量一样,有模式(数据类型)的概念.(但反过来,向量却不能看作是只有一列或一行的矩阵. 数组(array)是R里更一 ...

  2. R 操作矩阵和计算SVD的基本操作记录

    在R中可以用函数matrix()来创建一个矩阵,应用该函数时需要输入必要的参数值. > args(matrix) function (data = NA, nrow = 1, ncol = 1, ...

  3. Scala编程入门---数组操作之Array.ArrayBuffer以及遍历数组

    在Scala中,Array代表的含义与Java类似,也是长度不可改变的数组.此外,由于Scala与java都是运行在JVM中,双方可以互相调用,因此Scala数组底层实际上是java数组.列如字符串数 ...

  4. 使用POI对excel进行操作生成二维数组

    import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import ja ...

  5. 操作 numpy 数组的常用函数

    操作 numpy 数组的常用函数 where 使用 where 函数能将索引掩码转换成索引位置: indices = where(mask) indices => (array([11, 12, ...

  6. iOS 判断数组array中是否包含元素a,取出a在array中的下标+数组方法详解

    目前找到来4个解决办法,第三个尤为简单方便 NSArray * arr = @["]; //是否包含 "]) { NSInteger index = [arr indexOfObj ...

  7. JavaScript jQuery 中定义数组操作及数组操作

    1.认识数组 数组就是某类数据的集合,数据类型可以是整型.字符串.甚至是对象 Javascript不支持多维数组,但是因为数组里面可以包含对象(数组也是一个对象),所以数组可以通过相互嵌套实现类似多维 ...

  8. 深度学习实践-物体检测-faster-RCNN(原理和部分代码说明) 1.tf.image.resize_and_crop(根据比例取出特征层,进行维度变化) 2.tf.slice(数据切片) 3.x.argsort()(对数据进行排列,返回索引值) 4.np.empty(生成空矩阵) 5.np.meshgrid(生成二维数据) 6.np.where(符合条件的索引) 7.tf.gather取值

    1. tf.image.resize_and_crop(net, bbox, 256, [14, 14], name)  # 根据bbox的y1,x1,y2,x2获得net中的位置,将其转换为14*1 ...

  9. 算法进阶面试题02——BFPRT算法、找出最大/小的K个数、双向队列、生成窗口最大值数组、最大值减最小值小于或等于num的子数组数量、介绍单调栈结构(找出临近的最大数)

    第二课主要介绍第一课余下的BFPRT算法和第二课部分内容 1.BFPRT算法详解与应用 找到第K小或者第K大的数. 普通做法:先通过堆排序然后取,是n*logn的代价. // O(N*logK) pu ...

随机推荐

  1. Spring Cloud之Eureka自我保护环境搭建

    Eureka详解 服务消费者模式 获取服务 消费者启动的时候,使用服务别名,会发送一个rest请求到服务注册中心获取对应的服务信息,让后会缓存到本地jvm客户端中,同时客户端每隔30秒从服务器上更新一 ...

  2. css 中 div垂直居中的方法

    在说到这个问题的时候,也许有人会问CSS中不是有vertical-align属性来设置垂直居中的吗?即使是某些浏览器不支持我只需做少许的CSS Hack技术就可以啊!所以在这里我还要啰嗦两句,CSS中 ...

  3. Web Worker浅学

    Web Workers 是 HTML5 提供的一个javascript多线程解决方案,我们可以将一些大计算量的代码交由web Worker运行而不冻结用户界面.它独立于其他脚本,不会影响页面的性能.您 ...

  4. java:Eclipse:Could not create the view:解决办法

    Eclipse:Could not create the view: Plug-in org.eclipse.jdt.ui was unable to load class org.eclipse.j ...

  5. 处理json的工具类({本类为处理json的工具类})

    <jackson.version>2.2.3</jackson.version> <!-- json --> <dependency> <grou ...

  6. Linux-Rsync命令参数详解

    在对rsync服务器配置结束以后,下一步就需要在客户端发出rsync命令来实现将服务器端的文件备份到客户端来.rsync是一个功能非常强大的工具,其命令也有很多功能特色选项,我们下面就对它的选项一一进 ...

  7. Android之SharedPreferences权限

    import android.app.Activity; import android.content.SharedPreferences; import android.os.Bundle; pub ...

  8. oubango中视频JitterBuffer的优化

       

  9. Trilead,SSH2的Java调用

    最近项目要部署10台设备,如果每台设备都手动进行部署想想也是醉了. 因为之前一直使用SecurityFX以及SecurityCRT,所以考虑是否可以使用基于SSH2的类库来实现文件拷贝以及远程命令调用 ...

  10. Poj1062 昂贵的聘礼 (dijkstra算法)

    一.Description 年轻的探险家来到了一个印第安部落里.在那里他和酋长的女儿相爱了,于是便向酋长去求亲.酋长要他用10000个金币作为聘礼才答应把女儿嫁给他.探险家拿不出这么多金币,便请求酋长 ...