数据载入问题

在数据载入之前首先需要通过 getwd() 命令看一下你的工作目录.

1
2
> getwd()
[1] "/Users/yzhai"

如果 read.file 拉不出数据时, 有两个选择:

  • 通过 setwd() 更改工作目录, 注意目录需要加引号
1
setwd("/Users/Albert/Documents/R/MC")
  • 将文件保存到当前工作目录下

然后在 R 中使用命令:

1
read.csv("Rtest.csv", header = FALSE, sep = ",", quote = "\"", dec = ".", fill = TRUE)

注意引用的文件加引号.

数据格式转换问题

在执行 R 命令时, 可能会遇到这样的报错:

1
'x' must be numeric

类似这样的报错是由于数据格式不对造成的. 首先我们先判断数据类型:

  • is.numeric() 是否数值型数据

  • is.character() 是否字符型数据

  • is.vector() 是否向量数据

  • is.matrix() 是否矩阵数据

  • is.data.frame() 是否数据框数据

  • is.factor() 是否因子数据

  • is.logical() 是否逻辑型数据

以上为判断数据类型的函数,其返回TRUE或FALSE

然后在进行数据类型的转换:

  • as.numeric()

  • as.character()

  • as.vector()

  • as.matrix()

  • as.data.frame()

  • as.factor()

  • as.logical()

以上为转换数据类型的函数,这样的函数则将其参数转换为对应的类型。

实例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
> a<-c(1,2,3)
> a
[1] 1 2 3
> is.numeric(a)
[1] TRUE
> is.vector(a)
[1] TRUE
> a<-as.character(a)
> a
[1] "1" "2" "3"
> is.numeric(a)
[1] FALSE
> is.vector(a)
[1] TRUE
> is.character(a)
[1] TRUE

R 命令行变成 + 号

这种情况是由于语句输入不完整造成的,后面直接加 ; 回车执行,会退出这种状态

或者按 esc 退出这种状态

R Console 中回车不执行命令方法

使用 shift + enter 可以换行不执行代码.

包中重名方法的选择

psych包和Hmisc包均提供了名为describe()的函数, 最后载入的程序包优先.

如果想要选择前一个包的方法, 使用以下方法:

1
Hmisc::describe(mt)

清除 R 中 Global Environment 下的所有数据

1
rm(list=ls())