私大きいCSVファイル。
同様のコマンドを使って私のファイルを見たいですless
。このコマンドは、一部を表示するためにファイル全体を一度に読み取る必要はありません。
私のファイルをカンマでソートされた列に表示するコマンドはありますか?
答え1
これがあなたにとって十分であるかどうかはわかりませんが、プログラムを活用し、次を使用してcolumn
ファイルの選択された部分を読むことができます。head
tail
head -n 300 myfile.csv | tail -n 100 | column -ts ',' | less
head -n-300 myfile.csv | head -n 100 | column -ts ',' | less
ファイルの別の部分を一度に表示するためにいくつかのスクリプトでラップできます(おそらくless
それほど多くはありません)。それ以外にも、タスクを実行するためにGNUツールのみを使用することには問題があるようです。
答え2
less
ただし、列で並べ替えられたCSVデータを表示するには、次のコマンドで現在のページをパイプしますcolumn -ts ,
。
| <m> シェルコマンド <m> はマークアップ文字を表します。入力の一部をパイプで接続 ファイルを指定のシェルコマンドに追加します。ファイルの一部 パイプは現在の画面の最初の行です。 文字は場所を示します。 ^または$で表示することもできます。 ファイルの開始または終了をそれぞれ検索します。の場合。または新しい - いいですね。現在の画面がパイプされています。 mの後に小文字が続くと、現在の位置が表示されます。 その手紙で。
だから|.column -ts ,
使用less
答え3
私は良い経験をしましたtabview
、常に大容量ファイルをうまく処理するわけではありません。それでも組み合わせはhead
かなり大丈夫ですね。
答え4
これは実際には問題ではありませんが、とにかくless
csvファイルを表示する以外のものを使用することをお勧めします。これは実際に正しいツールではありません。このようなことを試してくださいR
。 CSVファイルの表示と必要に応じて処理のサポートをお勧めします。たとえば、csvファイルの5行を読み取るには、次のようにします。
$ R
> read.csv("pheno.csv",nrows=5)
faid expid pid mid sex pheno
1 1420 NA12003 0 0 1 0
2 1420 NA12004 0 0 2 0
3 1420 NA10838 9 10 1 0
4 1420 NA12005 0 0 1 0
5 1420 NA12006 0 0 2 0
バラより
> help(read.csv)
助けを求める。また、見ることができます
> help(write.csv)
ファイルの書き込みなどに使用されます。
編集:長さ934991行の1.1G csvファイルがあります。
$ time Rscript -e 'read.csv("GenomeWideSNP_6.na29.annot.csv", skip=500000, nrows=5, header=FALSE)'
その後、500,000行をスキップして5行を読みます。 Rはこの値を返すのに1分かかり、最大使用量が620M(!)の場合、スキップされた行をメモリに読み込むように見えますが、これは意味がありません。
結果:私は実際にRのファンではありませんが、中小規模のデータセットを処理するとき、特に統計分析を実行したい場合はRよりも悪いことがあります。代替はPythonといくつかのcsv処理ライブラリです。