首页 > 解决方案 > 在 R 中写入和读取 csv 文件的问题

问题描述

这是我的交易数据:

head(data)

id          from_id        to_id      amount    date_trx
<fctr>      <fctr>         <fctr>     <dbl>     <date>
226133      7468           5695       700.0     2005-01-04
779717      6213           9379       11832.0   2005-01-08
264887      7517           8170       1000.0    2005-01-10
830594      6143           9845       4276.0    2005-01-12
452670      6254           9640       200.0     2005-01-14
268574      6669           5815       200.0     2005-01-20

...

class(data)
[1] "tbl_df"     "tbl"        "data.frame"

typeof(data)
[1] "list"

我将其保存为 csv 文件,以备后用,通过以下方式保存到我的计算机:

write.csv(data, "mydirectory/dataset.csv")

并通过以下方式阅读:

data_read <- read.csv("mydirectory/dataset.csv") %>% select(-X)

class(data_read)
[1] "tbl_df"     "tbl"        "data.frame"

typeof(data_read)
[1] "list"

但是,当我想通过以下方式获取“数据”中第一列的值时:

data[,1]

它返回:


[1] 226133 779717 264887 830594 452670 268574 ...

但是,“data_read”中的相同命令:

data_read[,1]

返回列本身:

 id
<fctr>
226133              
779717              
264887              
830594              
452670              
268574
...

为什么会这样?

标签: rcsvread.csv

解决方案


也许这可以帮助:

data[,1,drop=F]

此外,一个看起来像一个数据框,另一个是一个小标题。


推荐阅读