我可以重現錯誤的Windows 7計算機上運行RStudio 0.97.551
這可能是因爲你打電話summarise
並鏈接到不存在的東西。你可以用summarise
兩個不同的列,因爲我在這裏完成。
url <- "https://raw.github.com/johnmarquess/some.data/master/orth0106.csv"
library(dplyr)
orth <- read.csv(url)
orth_df <- tbl_df(orth)
orth_df %.%
group_by(Hospital) %.%
summarise(Procs = length(Procedure), SSIs = sum(SSI))
## Source: local data frame [18 x 3]
##
## Hospital Procs SSIs
## 1 A 865 80
## 2 B 1069 38
## 3 C 796 24
## 4 D 891 35
## 5 E 997 39
## 6 F 550 30
## 7 G 2598 128
## 8 H 373 27
## 9 I 1079 70
## 10 J 714 30
## 11 K 477 30
## 12 L 227 2
## 13 M 125 6
## 14 N 589 38
## 15 O 292 3
## 16 P 149 9
## 17 Q 1984 52
## 18 R 351 13
在任何情況下,這似乎是RStudio或dplyr
錯誤。我會向哈德利提出一個問題,因爲他可能在乎任何一方面。 https://github.com/hadley/dplyr/issues
編輯這(首次呼叫)也會導致RGUI(窗口)和終端崩潰以及上:
R version 3.0.2 (2013-09-25)
Platform: i386-w64-mingw32/i386 (32-bit)
這表示dplyr
問題哈德利和羅曼會想知道。
爲了讓我的第一點,我們運行:
orth_df %.%
group_by(Hospital) %.%
summarise(Procs = length(Procedure))
Source: local data frame [18 x 2]
Hospital Procs
1 A 865
2 B 1069
3 C 796
4 D 891
5 E 997
6 F 550
7 G 2598
8 H 373
9 I 1079
10 J 714
11 K 477
12 L 227
13 M 125
14 N 589
15 O 292
16 P 149
17 Q 1984
18 R 351
哪裏是%.% summarise(SSIs = sum(SSI))
應該找到SSI
?
所以你認爲的鏈接發生失敗。據我的理解%.%
是不完全像ggplot2
工程但類似。在初始映射中傳遞數據後,您可以在ggplot2
之後訪問它。這裏%%似乎修改搶左邊塊和操作上這樣說:
所以你抓住:
Hospital Procs
1 A 865
2 B 1069
3 C 796
.
.
.
17 Q 1984
18 R 351
當您使用%.% summarise(SSIs = sum(SSI))
並沒有SSI
到得到。所以想到的比喻是serial vs. parallel wiring Christmas lights。 %.% = serial
ggplot() + = parallel
。這是一個非程序員對事物的理解,R大師可能會來告訴我我很愚蠢,但現在這是你得到的最好的理論。
你能否提供一個可重現的例子來重現錯誤? – marbel
@ martin-bel - 現在包括數據和代碼。 – John
未來,請直接在github上提交這樣的bug。我已經投票結束這個問題,因爲一旦dplyr的下一個版本發佈(即將推出),它將不再適用 – hadley