[英]Reading Tab Delimited Data in to R
我試圖讀取一個大的制表符分隔文件到R.
首先我嘗試了這個:
data <- read.table("data.csv", sep="\t")
但它正在讀取一些數字變量作為因素
所以我嘗試根據我希望每個變量的類型讀取數據:
data <- read.table("data.csv", sep="\t", colClasses=c("character","numeric","numeric","character","boolean","numeric"))
但是當我嘗試這個時它會給我一個錯誤:
掃描錯誤(文件,什么,nmax,sep,dec,quote,skip,nlines,na.strings,:scan()預期'真實',得到'“4”'
我想可能是原始文件中的某些數值有引號,但我不確定。
在沒有看到您的數據的情況下,您有以下幾點之一:您沒有將所有數據分開; 在單個觀察中有嵌入的標簽; 或者其他人。
你可以options(stringsAsFactors=FALSE)
進行排序的方法是設置options(stringsAsFactors=FALSE)
然后使用你的第一行。
檢查str(data)
並嘗試找出哪些行是罪魁禍首。 一些數值作為因子讀取的原因是因為該列中有一些東西將R解釋為一個字符,因此它將整個列強制轉換為字符。 它通常需要一些挖掘,但問題幾乎肯定與您的輸入文件有關。
這是一個常見的數據問題,祝你好運!
x <- paste("'",floor(runif(10,0,10)),"'",sep="")
x
[1] "'7'" "'3'" "'0'" "'3'" "'9'" "'1'" "'4'" "'8'" "'5'" "'8'"
as.numeric(gsub("'", "",x))
[1] 7 3 0 3 9 1 4 8 5 8
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.