2012-12-03 8 views

Odpowiedz

12

Myślę, że write.table z argumentem file = "clipboard" zadziała. Oto przykład:

write.table(mtcars, "clipboard", sep="\t", row.names=FALSE) 
+1

podobnie jak 'writeClipboard', działa to tylko na komputerze z systemem Windows. Wypróbuj go na Macu i eksploduje. Następnie musisz zrobić coś takiego jak klip <- pipe ("pbcopy", "w") write.table (mtcars, file = clip, sep = "\ t", col.names = NA) close (clip) –

+1

Jak wspomina Chris, ta metoda może być problemem dla większych tabel. Odczytywanie plików pomocy write.table, a następnie plików, schowek to pamięć wewnętrzna z limitem 32 Kb. Jeśli Twój stół przekroczy ten limit, pojawi się błąd. Na szczęście można zwiększyć rozmiar pamięci wewnętrznej, zastępując "schowek" przez "schowek-128", aby uzyskać pamięć o pojemności 128 Kb, lub cokolwiek, czego potrzebujesz, np. write.table (mtcars, "clipboard-128", sep = "\ t", row.names = FALSE) – Mooks

2

Powyższa odpowiedź jest w większości błędna, jeśli Twój stół jest nieco większy.

Warning message: 
In .External2(C_writetable, x, file, nrow(x), p, rnames, sep, eol, : 
    clipboard buffer is full and output lost 

Rozwiązaniem Hack to:

writeClipboard(knitr::kable(d)) 
8

Miłym rozwiązaniem jest niezależny od systemu operacyjnego:

library(clipr) 
clipr::write_clip(mtcars) 

Ale mogą cierpieć z powodu ograniczeń rozmiaru, jak również.

+1

Nie cierpi tak źle jak piszę. Dziękuję za tę oszczędność życia +1. – cgage