0.面向对象的操作逻辑&seq_along

没接触过面向对象的语言,运用R的时候还会保留一些过去的操作逻辑,比如构造循环啊什么的,这些东西R已经为你准备好了。

《O‘reilly-R》练习4.1:第n个三角形数表示为n*(n+1)/2。创建一个包含前20个三角形数的序列。R有一个内置常数letters,它包含小写的英文字母。使用前20个英文字母来给你刚刚创建的序列元素命名。选择命名为元音的三角形数。

1 n<-seq_len(20)
2 tri_num<-n*(n+1)/2
3 names(tri_nums)<-letters[seq_along(n)]
4 (tri_num[c("a","e","i","o")]

seq_along()要注意一下

官方给的解释:take the length from the length of this argument.

the length of this argument 的意思是什么?是创造一个和输入的值长度一样的序列吗?

不是

这里的长度指的是有点像matrix的length,这个变量中元素的数量。

n是一个20个元素的序列,所以这里创造了一个从1开始长度为20的序列

如果直接输入20的话,只会有一个元素被命名因为20就是的元素数量为1。

原文地址:https://www.cnblogs.com/clclcl/p/9859037.html

时间: 2024-08-30 04:16:02

0.面向对象的操作逻辑&seq_along的相关文章

js 非布尔值操作 逻辑与 和 逻辑或*

/*js 非布尔值操作 逻辑与 和 逻辑或*//* * 注:( "" , 0 ,undefined ,NaN ,null 转换为 false) * *//*逻辑与*/console.log(( 1 && 1 && "hello" && 2 && 3 && 4 )); // 第一个转换为true 返回 最后一个值 (4)console.log(( 0 && 0 &&

【转载】SQLServer 2012 已成功与服务器建立连接,但是在登录前的握手期间发生错误。 (provider: SSL Provider, error: 0 - 等待的操作过时

楼主用SQL Server 2012 在连接其他电脑的实例时,一直提示“已成功与服务器建立连接,但是在登录前的握手期间发生错误. (provider: SSL Provider, error: 0 - 等待的操作过时.” Google了很多资料,综合自己的问题,并参照官方问题介绍:http://support.microsoft.com/kb/2568167 和另外一位仁兄的博客http://blog.sina.com.cn/s/blog_728bc6a1010182ai.html整理解决方法如

SQLServer 2012 已成功与服务器建立连接,但是在登录前的握手期间发生错误。 (provider: SSL Provider, error: 0 - 等待的操作过时。

楼主用SQL Server 2012 在连接其他电脑的实例时,一直提示“已成功与服务器建立连接,但是在登录前的握手期间发生错误. (provider: SSL Provider, error: 0 - 等待的操作过时.” Google了很多资料,综合自己的问题,并参照官方问题介绍:http://support.microsoft.com/kb/2568167 和另外一位仁兄的博客http://blog.sina.com.cn/s/blog_728bc6a1010182ai.html整理解决方法如

JAVA操作mysql(如何更加面向对象的操作数据库)

既然谈到面向对象,所以,先把连接信息给搞个对象出来: public class DBInfo { private String driver; private String host; private String port; private String user; private String pwd; private String dataBase; public DBInfo(){ this.driver = "com.mysql.jdbc.Driver"; this.host

PHP mysqli 扩展库(面向对象/数据库操作封装/事务控制/预编译)

1.和mysql扩展库的区别: (1   安全性.稳定性更高 (2  提供了面向对象和面向过程两种风格 2.php.ini  中的  extension=php_mysqli.dll 解除封印 3.面向对象:查询列表 1 <?php 2 3 //mysqli 操作数据(面向对象风格) 4 5 #1.创建Mysql对象 6 7 $mysqli=new MySQLi("127.0.0.1","root","daomul","test&

js闭包 选择器 面向对象 事件 操作页面

闭包js函数的嵌套定义,定义在内部的函数 就称之为闭包为什么使用闭包: 1.一个函数要使用另一个函数的局部变量 2.闭包会持久化包裹自身的函数的局部变量 3.解决循环绑定 function outer() { var num =10; function inner() { //1.在inner函数中,使用了outer的局部变量num return num; } return inner; } var innerFn = outer(); //2.借助闭包,将局部变量num的声明周期提升了 var

java-int类型:int默认为0导致更新操作未赋值的情况下将值更新为0

日常开发中,做更新操作的时候的处理方法为:当这个字段有值则更新,没有值就不更新,在mybatis的xml中表现为: <!-- 修改记录,只修改只不为空的字段 --> <update id="updateBySelective" parameterType="Object" > update tb_mj_user set <trim suffixOverrides="," > <if test="

面向对象数组操作

封装面向对象数组,并且支持有序和无序,查询元素分为顺序查找和二分法. 1 /** 2 * @ClassName: MyArray 3 * @Description: 封装自己数组 4 * @author dongye 5 * @date 2016年3月1日 上午9:28:40 6 * 7 */ 8 public class MyArray { 9 private long[] arr; 10 //有效长度 11 private int elements; 12 13 public MyArray

RHCE7.0答案之创建逻辑卷

创建逻辑卷配置: fdisk /dev/vdb  n,e,+200M,t,8e,p,w partprobe; ll /devvdb* pvcreate /dev/vdb5; pvscan vgcreate -s 16M datastore /dev/vdb5 vgdisplay lvcreate -l 10 -n database datastore mkfs -t ext4/xfs /dev/datastore/database mkdir /mnt/database vim /etc/fst