2016-07-19 2 views
1

Census' Geographic Boundary Change Notesで読み込みしようとしています。ハイパーリンクに表示されるように、ファイルはK x 11の表です。そのページのリンクからpipe-delimited text versionを入手できます。R:各行の末尾が区切られていない場合、区切り文字の表を読み取る

私は.txtファイル(例えばfoo.txtの)としてパイプ区切りのテキストバージョンを保存し、その後経由でパイプ区切りテーブルとしてそれを読んで、手動で試してみました:しかし、これは生産

data <- read.table("foo.txt", sep="|") 

エラー:

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

私が177行目と思ったところまでスクロールすると、何も見当たりません。したがって、生のテキストを見て潜在的な問題を見てみましょう。そして、パイプが個々の行を区切らないように見えるということです。つまり、生の.txtの表の行の最後にあるというインジケータはありませんファイル。しかし、これはread.table()が11個のオブジェクトを予期していたという事実と矛盾しているようです。

  1. テーブルの各行の最後に対応する区切り文字を.txtファイルに追加する必要がありますか。

  2. もしそうなら、どうすれば区切り文字を手動で追加する必要はありませんか?

これが問題でない場合はお詫び申し上げます。

+1

行は改行で区切られます - '\ n' - 各行の最後に区切り記号は必要ありません。 – thelatemail

+1

私は同じエラーが発生することを確認できます。 177行目は問題ではないようですが、私が知る限りでは11個の要素があります。 'readLines'を使い、各コンポーネントを' strsplit 'することで、何かを一緒に見て回ることができます。しかし、何が間違って行っているか分からない。 – thelatemail

+1

それはちっちゃんですが、それはあなたに何かを提供するでしょう - 'do.call(rbind、strsplit(readLines(" https://www.census.gov/geo/reference/bndrychange/united%20states.txt ")、 "|"、fixed = TRUE)) ' – thelatemail

答えて

1

区切り文字に問題はありませんでした。代わりに.txtファイルをダウンロードし、Microsoft Excelで '|'デリミタとして使用します。問題が発生した行までスクロールすると、スペイン語の文字が問題を引き起こしていたようです。

関連する問題