2015-04-14 84 views
1

我無法將我的數據文件加載到R.我嘗試過所有可能的功能函數我能找到,包括read.table和scan的許多不同變體。在將我的數據文件加載到R中時出現問題

該文件是一個.txt文件,幷包含一個數據塊。它沒有標題等。它只是包含在矩形中的一組結果,只有空格分隔不同的結果。

當我輸入數據就好像它是一個表一樣,並試圖找到數據的摘要,每一行都被視爲它自己的數據集。所以我最終得到9個不同的總結。

我需要將數據識別爲只是用逗號分隔的數字列表,但無論我做什麼,我似乎都無法做到這一點。

此外,我有一個mac(如果這影響任何東西)。

任何幫助將不勝感激。謝謝。

+0

您是否試過'read.table(file = yourFilePath,sep ='')'? –

+0

你可以發佈一些虛擬數據,並提供你迄今爲止嘗試過的更多細節嗎? http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example –

回答

1

如果我正確理解你的問題,那麼你要閱讀下面的內容(這是一個文件,說~/tmp/spaced-data.dsv):

1 2 3 
4 5 6 
7 8 9 

爲一個向量:c(1, 2, 3, 4, 5, 6, 7, 8, 9)

如果你的文件不是很大,那麼你就可以做到以下幾點:

> read.csv(text=paste0(readLines('~/tmp/spaced-data.dsv'), collapse=' '), 
      header=F, 
      sep=' ' 
     ) 
    V1 V2 V3 V4 V5 V6 V7 V8 V9 
1 1 2 3 4 5 6 7 8 9 
2

這是另一種方法。我在Word中創建了text.txt,數據看起來像下面的df,但沒有行號或列名。我用read.table將它讀入R中。

df <- read.table("~/R/text.txt", sep = "") 
df 

    V1 V2 V3 V4 
1 1 3 5 7 
2 2 4 6 8 
3 1 2 3 4 
4 5 6 7 8 

library("tidyr") # to do what the `melt` function of reshape2 does 
df2 <- gather(df)[-1] # arrange all the values in one variable [remove one column] 

    value 
1  1 
2  2 
3  1 
4  5 
5  3 
6  4 
7  2 
8  6 
9  5 
10  6 
11  3 
12  7 
13  7 
14  8 
15  4 
16  8 
summary(df2$value) # calculate the summary statistics 

    Min. 1st Qu. Median Mean 3rd Qu. Max. 
    1.00 2.75 4.50 4.50 6.25 8.00 
+1

'as.vector(as.matrix(df))'會做同樣的事 – germcd

相關問題