1

これが私の簡単なテキストです(テストという名前):

  name      sex     age  height  
1 x1        F       18   162
2 x2        M       19   170
3 x3        M       21   178
4 x4        F       22   166
5 x5        F       23   165

>read.table('test', sep='') 

大丈夫です。

>read.table('test', sep=' ')  

Error in scan(file, what, nmax, sep, dec, quote, skip, nlines, na.strings,  :   
  line 1 did not have 20 elements  

理由を知りたいです。

R の read.table の '' と ' ' の違いは何ですか? 私にその理由を教えてください。

4

1 に答える 1

6

ドキュメントで説明されているように、のデフォルト値''は「任意の量の空白」を意味しますが、2番目の選択は実際には非常に異なる 正確に1つのスペース' 'を意味します。

文言 ( help(read.table)) は理想的ではありませんが、仕事は完了します。

 sep: the field separator character.  Values on each line of the
      file are separated by this character.  If ‘sep = ""’ (the
      default for ‘read.table’) the separator is ‘white space’,
      that is one or more spaces, tabs, newlines or carriage
      returns.

たとえば、カンマ区切りのcsvファイルがあることがわかっている場合を除き、デフォルト値が必要です。

于 2012-07-24T01:22:06.720 に答える