How to load comma separated data into R?

南楼画角 提交于 2019-12-19 09:07:37

问题


I have a flat file like this:

   x1,   x2,   x3,   x4,   x5
0.438,0.498,3.625,3.645,5.000
2.918,5.000,2.351,2.332,2.643
1.698,1.687,1.698,1.717,1.744
0.593,0.502,0.493,0.504,0.445
0.431,0.444,0.440,0.429,1.0
0.438,0.498,3.625,3.648,5.000

How do I load it in R.

I have tried to do this

> x <- read.table("C:\\flatFile.txt", header=TRUE)

but after I do some operation I get error like

> colSums(x)
Error in colSums(x) : 'x' must be numeric

回答1:


If you look at the help on read.table you'll discover some extra functions that are essentially read.table with different defaults. If you tend to read in lots of files that would be best read in using those defaults then use them instead of read.table for conciseness.

This code will read in your file

x <- read.table("C:\\flatFile.txt", header=TRUE, sep = ',')

or this code

x <- read.csv("C:\\flatFile.txt")

Note that, while you can set any of the features of these read.table based commands just like read.table, it is rather pointless to use them and reiterate the default settings. For example, don't bother with read.csv if you're then going to also be setting header = TRUE, and/or, sep = ',' all of the time as well. You might as well just use read.table in that case.




回答2:


You need to use the colClasses option to read.csv. Like this:

x <- read.csv("C:\\flatFile.txt", head=TRUE, colClasses=c("numeric","numeric","numeric","numeric"))


来源:https://stackoverflow.com/questions/7451591/how-to-load-comma-separated-data-into-r

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!