Saya bekerja dengan dplyr dan membuat kode untuk menghitung data baru yang diplot dengan ggplot.
Saya ingin membuat fungsi dengan kode ini. Ini harus mengambil nama kolom bingkai data yang dimanipulasi oleh dplyr. Namun, mencoba bekerja dengan nama kolom tidak berhasil. Silakan pertimbangkan contoh minimal di bawah ini:
df <- data.frame(A = seq(-5, 5, 1), B = seq(0,10,1))
library(dplyr)
foo <- function (x) {
df %>%
filter(x < 1)
}
foo(B)
Error in filter_impl(.data, dots(...), environment()) :
object 'B' not found
Apakah ada solusi untuk menggunakan nama kolom sebagai argumen fungsi?
foo <- function(x,...)filter(x,...)
Saya punya yang berikut ini sekarang. Tidak yakin apakah saya menulis sesuatu dengan benar. Tapi hasilnya sepertinya benar.foo <- function (x,...) filter(x,...);foo(df, B < 1)
- person jazzurro   schedule 23.09.2014