8

インターフェイスを作成したいのですが、Excel-R::data.table です。クリップボードで fread 関数を使用する方法を教えてください。次のコードはうまく機能していますが、read.table の代わりに fread を使用することをお勧めします (Excel ファイルでいくつかのテーブルをコピーし、R で上記のコマンドを実行するために):

data.table(read.table("clipboard",sep="\t",header=TRUE))

クリップボードへの接続を宣言しようとしましたが、今のところ機能しません。また、 fread 関数のドキュメントに記載されているように、変更される予定があり、一部の機能が非推奨になる可能性があるため、近い将来に非推奨にならないソリューションがあると便利です。クリップボード/フレッドに制限はありますか? 65000行、またはその他のメモリ制限のようなものですか?

また、data.table::fread 関数を拡張して、現在 read.table で動作しているため、デフォルトで「クリップボード」接続を受け入れることを提案したいと思います。

ありがとう

4

2 に答える 2

9

freadにはこの機能がないようですが、用途が限られている場合は、独自のラッパーを簡単に作成できます。次の行に沿った何かが、開始するのに役立つ場合があります。

freadClip <- function(...) {
  X <- tempfile()
  writeLines(readLines("clipboard"), X)
  fread(X, ...)
}

使用方法は、Excel シートからセルをコピーし、R に切り替えて、 と入力するだけfreadClip()です。

注:これは何よりも便利な関数であると想定しています。主に、Excel から R に小さなデータセットをすばやく取得する ためのものです。65k 行の範囲のファイルに個人的に使用するかどうかはわかりません。"clipboard"あなたはあなたの質問で説明します。

于 2013-11-05T10:39:29.763 に答える