R语言初学者经验

经验丰富的程序员通常会发现R语言的某些方面不太寻常。以下是这门语言中你需要了解的一些特性:

1、对象名称中的句点(.)没有特殊意义。但美元符号($)却有着和其他语言中的句点类似的含义,即指定一个对象中的某些部分

例如:

(1)A$x是指数据框A中的变量x。

(2)lm.x 指一个变量,lm$x则指对象lm的一个属性。

2、 R不提供多行注释或块注释功能

你必须以#作为多行注释每行的开始。出于调试目的,你也可以把想让解释器忽略的代码放到语句if(FALSE){. .. }中。将FALSE改为TRUE,即允许这块代码执行。

> plot(x) #画图
>

3、将一个值赋给某个向量、矩阵、数组或列表中一个不存在的元素时,R将自动扩展这

  个数据结构以容纳新值

举例来说,

(1)考虑以下代码:

> x <- c(4,5,6)
> x[7] <- 7
> x
[1]  4  5  6 NA NA NA  7

通过赋值,向量x由三个元素扩展到了七个元素。

  x <- x[1:3]会重新将其缩减回三个元素。

(2)在数据框中,若某一列向量输入的长度不够,则自动填充;如果填充因子长度不是最长列长度的因数(被最长列长度整除),则报错。

> x <- c(1,2,3,4,5)
> y <- c("one","two")
> z <- data.frame(x,y)
Error in data.frame(x, y) : 参数值意味着不同的行数: 5, 2
> x <- c(1,2,3,4,5,6)
> z <- data.frame(x,y)
> z
  x   y
1 1 one
2 2 two
3 3 one
4 4 two
5 5 one
6 6 two
>

4、  R中没有标量,标量以单元素向量的形式出现 

5、 R中的下标不从0开始,而从1开始

> patientID
[1] 1 2 3 4
> patientID[1]
[1] 1

6、变量无法被声明

它们在首次被赋值时生成。


  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值