私は解決できない奇妙な問題があります。r式はRのddply()では動作しますが、光沢のあるマークダウンでは機能しません
次のコードでは、Rスタジオで正常に動作します:
> set.seed(12345)
>
> library(plyr)
> library(dplyr)
>
> dt <- data.frame(a=1:10, b=sample(1:3, 10, replace=T))
>
> var <- "a"
> formula <- parse(text=paste0(var, "+1"))[[1]]
>
> print(dt)
a b
1 1 3
2 2 3
3 3 3
4 4 3
5 5 2
6 6 1
7 7 1
8 8 2
9 9 3
10 10 3
>
> # this works in R Studio, but not in markdown
> res <- dt %>%
+ ddply(.(b), transform, diff = eval(formula))
> print(res)
a b diff
1 6 1 7
2 7 1 8
3 5 2 6
4 8 2 9
5 1 3 2
6 2 3 3
7 3 3 4
8 4 3 5
9 9 3 10
10 10 3 11
私はRマークダウンで同じコードを実行すると、私は
Error: arguments imply differing number of rows: 2, 0
はここで何が起こっているというエラーメッセージが表示されますか?
---
title: "Untitled"
author: "Author"
date: "8/29/2016"
output: html_document
runtime: shiny
---
```{r}
set.seed(12345)
library(plyr)
library(dplyr)
dt <- data.frame(a=1:10, b=sample(1:3, 10, replace=T))
formula <- parse(text=paste0("a", "+1"))[[1]]
#this does work in R, but not in markdown
res <- dt %>%
ddply(.(b), transform, diff = eval(formula))
res
```
おかげで私の投稿にコメントする人のため
は再生できません。私のマシンでの結果は、上記のものとまったく同じです。 – nilsole
マークダウン文書の最後のブロックを実行しましたか?コードはrスタジオで実行されますが、rマークダウンでは実行されません。 – chungkim271
@ chungkim721ファイルに保存したコードをRStudioの 'rmarkdown :: run'で実行し、Chromeのlocalhost経由でアプリにアクセスできました。あなたはサーバーに展開しましたか、「in r markdown」とまったく同じ意味ですか? – nilsole