web-dev-qa-db-ja.com

Wordにコピー/貼り付けするときにrstudioの書式を保持するにはどうすればよいですか?

R、Rstudio、およびSOの新機能-事前に謝罪します。

宿題のためにWord 2010でコードを複製したい。スクリプトはrstudioで作成されたので、Wordに貼り付けるときにrstudioの書式を保持したいと思います。主に、rstudioが使用するフォントの色と間隔が気に入っています。 SASからWordに貼り付けると、書式設定は保持されますが、ここではサイコロは表示されません。

私は通常、これを行うために特別なコピー/貼り付けの特別なオプションを探しますが、見つかりません。 Wordにスペシャルを貼り付けようとすると、フォーマットされていないテキストオプションのみが表示されます。テキストを1行ずつ再フォーマットしたくないのは、rstudioではかなり見栄えが良いと思うからです。

Rstudioのスクリプトを、その書式を維持する何らかの形式で保存しようと考えましたが、これを行う方法が見つかりませんでした。誰も私がこれをやってのける方法を知っていますか?

前もって感謝します

28
dubhousing

RStudioのスクリプトエディター(4色または5色)から貼り付けるのか、RStudio内のRコンソール(スクリプト+出力)(2色のみ)から貼り付けるのかは明確ではありません。

コンソールから貼り付ける場合は、[特別な貼り付け]をもう一度チェックしてください。必要なことを行う「HTML形式」のオプションがあるはずです(ただし、ページの余白に応じてすべてが適切に収まるようにフォントのサイズを変更する必要がある場合があります)。

スクリプトエディターから貼り付ける場合は、直接コピーアンドペーストソリューションを使用することはできません。しかし、コピーアンドペーストアンドコピーアンドペーストソリューションがあります...

1つの解決策は、 Notepad ++ を使用することです。 RStudioから、スクリプト(「.R」拡張子)を保存してから、Notepad ++でスクリプトを開きます。 (または、RStudioからNotepad ++にコピーアンドペーストしますが、「言語」メニューからRにファイルの言語を設定してください)。スクリプトがNotepad ++で正しく強調表示されたら、[プラグイン]> [NppExport]> [HTMLをクリップボードにコピー]メニューに移動して、開いているファイルをコピーします。これは、HTML形式でMS Wordに貼り付けることができます。

30

他の誰かがこの質問を探している場合に備えて...

RStudioを使用して見栄えの良い形式のWord文書にすべてのソースコードを含める別の方法は、File/Compile Notebookオプション、出力形式としてMS Wordを選択。

このオプションを使用すると、.docxドキュメントは、スクリプトの出力と元のソースコードで生成されます。ただし、スクリプトは実行されます。

コードを評価したくない場合(単純なコピーアンドペーストが必要な場合)、#+eval=FALSEスクリプトの冒頭で、ソースコードが評価されずにWord文書に再現されます。

このアプローチは knitr に依存しています。誰かがこれで遊んでみたい場合の例を次に示します。

#' ---
#' title: "My homework"
#' author: John Doe
#' date: June 15, 2015
#' output: Word_document
#' ---

# The header above sets some metadata used in the knitr output

# Conventional comments are formatted as regular comments

# Comments starting with "#+" control different knitr options.

#+echo=FALSE,message=FALSE,warning=FALSE
library(ggplot2)


#+echo=TRUE
#' Comments with a "+" sign are used to tell knitr what should be
#' done with the chunk of code:
#'
#'  - echo: Show the original code or not
#'  - eval: Run the original code or not
#'  - message: Print messages
#'  - warning: Print warnings
#'  - error: Print errors
#'  ...

#' Comments with an apostrophe "'" will be printed as regular text.
#' This is very useful to explain what you are actually doing!

# Regular comments can be used to document the code as usual
# Figures are printed:
ggplot(mpg, aes(x=cty, y=hwy)) + geom_point(aes(color=class))

#' Formatting **options** are possible.
#' Even [links](http://stackoverflow.com/questions/10128702/how-to-preserve-formatting-from-rstudio-when-copy-pasting-to-Word)
#'


#' This will show all the packages and versions used to generate this document.
#' It can be used to make sure that your teacher has all he needs to run your script
#' if he/she wants to.
sessionInfo()

Word document example

19
zeehio

インターネットにアクセスできると仮定します

  1. コピーして貼り付けて Gist.gisthub.com
  2. 言語として「R」を選択-これは色を提供する必要があります
  3. ヒット作成(秘密または公開)Gist
  4. Gistからワードプロセッサにコピーして貼り付けます。

Notepad ++ソリューションと比較して:

  • コードをクリップした時間を記録した、コードのオンラインバックアップ。
  • 他のソフトウェアをインストールする必要はありません。公共のコンピューターを使用している学生の場合に便利です。
8
sfuj

フォーマットされたコードのみが必要な場合:

ステップ1:コードの先頭に#+ eval = FALSEを追加します。

ステップ2:次に、ファイル->ニットドキュメントに進みます。 msword/PDF/Htmlのファイルをコンパイルします。

OR

コードの先頭に#+ eval = FALSEを追加するだけです。

Ctrl + Shift + Kを押してから、ファイルをmsword/PDF/Htmlにコンパイルします。

出力付きのコードが必要な場合は、コードの先頭にadd#+ eval = FALSEを入力せずに、手順2を直接実行します。

2
sumeet kumar

Zeehioには、Knitrを使用することがおそらく最良の選択肢であることに同意します。しかし、別の方法は Pretty Rツール および「ドキュメントのテキストを開く」ステップ here を使用することです。基本的には、コードをきれいなRにコピーアンドペーストし、出力(htmlではなく)を開いているドキュメントにコピーアンドペーストします。

1
Scott Worland

RstudioコンソールウィンドウからコピーしてWord文書に貼り付けたら、コピーしたばかりのテキストをすべて強調表示し、フォントをCourier Newに変更する必要があります。これにより、Rstudio Consoleウィンドウと同じ間隔とラインナップが提供されます。

0
Schumacher

Rstudioエディターから「visual studio code」にコードをコピーして貼り付け、そこから再びワープロにコピーします。これを実現するには、まずVisual StudioコードにR拡張機能をインストールする必要があります。 「Visual studioコード」自体はIDEであり、R言語でも使用できる可能性がありますが、今は上記の質問に答えるために使用することを強調しています。

0
Aryo