Nếu tôi cần sử dụng tập dữ liệu bên trong một hàm (như bảng tra cứu) bên trong gói tôi đang tạo, tôi có cần tải rõ ràng bộ dữ liệu bên trong của hàm không?Dữ liệu bên trong một chức năng (tạo gói)
Hàm và tập dữ liệu đều là một phần của gói của tôi.
Đây có phải là cách chính xác để sử dụng dữ liệu thiết lập bên trong hàm:
foo <- function(x){
x <- dataset_in_question
}
hoặc là này tốt hơn:
foo <- function(x){
x <- data(dataset_in_question)
}
hoặc là có một số cách tiếp cận tôi không nghĩ đến việc đó là đúng ?
Mhh ... Tôi sẽ sử dụng hàm áp dụng trong hàm thay vào đó và sử dụng hàm trên tập dữ liệu, nhưng có lẽ đây không phải là một tùy chọn trong trường hợp này ... – Mikko
Tôi gần như chắc chắn tùy chọn đó (1) . AFAIK, bạn sử dụng 'data()' cho các tác dụng phụ của nó, không phải là giá trị trả về của nó. Trong thực tế, giá trị trả về của 'data()' chỉ đơn giản là tên của tập dữ liệu, không phải là biến thực tế. Hãy thử, ví dụ, 'x <- dữ liệu (iris)' và xem những gì sẽ xảy ra. – Andrie
Nếu bạn chỉ sử dụng tập dữ liệu làm bảng tra cứu và không thay đổi nó, có cần phải tạo một đối tượng giống hệt mới không? Nếu có nhu cầu, bạn có thể xem xét việc thêm bảng làm đối số chính thức cho hàm của bạn ('x = dataset_in_question'). – BenBarnes