R导入.csv文件

示例

使用base R导入

可以使用read.csv来包装逗号分隔的值文件(CSV),该文件可以包装read.table,但可用于sep = ","将分隔符设置为逗号。

# get the file path of a CSV included in R's utils package
csv_path <- system.file("misc", "exDIF.csv", package = "utils")

# path will vary based on installation location
csv_path
## [1] "/Library/Frameworks/R.framework/Resources/library/utils/misc/exDIF.csv"

df <- read.csv(csv_path)

df
##    Var1 Var2
## 1  2.70    A
## 2  3.14    B
## 3 10.00    A
## 4 -7.00    A

用户友好选项file.choose允许浏览目录:

df <- read.csv(file.choose())

笔记

  • 与不同read.table,read.csv默认为header = TRUE,并且使用第一行作为列名。

  • 所有这些函数都会factor默认将字符串转换为class,除非as.is = TRUE或stringsAsFactors = FALSE。

  • 该read.csv2变体默认为,sep = ";"并dec = ","用于以下国家/地区的数据:逗号用作小数点,分号用作字段分隔符。


使用包导入

该readr软件包的read_csv功能提供了更快的性能,大文件的进度条以及比read.csv包括在内的更受欢迎的默认选项stringsAsFactors = FALSE。

library(readr)

df <- read_csv(csv_path)

df
## # A tibble: 4 x 2
##    Var1  Var2
##   <dbl> <chr>
## 1  2.70     A
## 2  3.14     B
## 3 10.00     A
## 4 -7.00     A