R định nghĩa toán tử ~
(dấu ngã) để sử dụng trong công thức. Công thức có tất cả các loại sử dụng, nhưng có lẽ phổ biến nhất là cho hồi quy:
library(datasets)
lm(myFormula, data=iris)
help("~")
hoặc help("formula")
sẽ dạy cho bạn nhiều hơn nữa.
@Spacedman đã đề cập đến các khái niệm cơ bản. Hãy thảo luận cách nó hoạt động.
Thứ nhất, là một nhà điều hành, lưu ý rằng nó thực chất là một shortcut để một hàm (với hai đối số):
> `~`(lhs,rhs)
lhs ~ rhs
> lhs ~ rhs
lhs ~ rhs
Điều đó có thể giúp ích cho biết để sử dụng trong ví dụ apply
lệnh gia đình.
Thứ hai, bạn có thể thao tác các công thức dưới dạng văn bản:
oldform <- as.character(myFormula) # Get components
myFormula <- as.formula(paste(oldform[2], "Sepal.Length", sep="~"))
Thứ ba, bạn có thể vận dụng nó như một danh sách:
myFormula[[2]]
myFormula[[3]]
Cuối cùng, có một số thủ thuật hữu ích với công thức (xem help("formula")
để biết thêm):
myFormula <- Species ~ .
Ví dụ: phiên bản ở trên giống với phiên bản gốc, vì dấu chấm có nghĩa là "tất cả các biến chưa được sử dụng". Điều này xem xét data.frame bạn sử dụng trong cuộc gọi mô hình cuối cùng của bạn, xem các biến nào tồn tại trong data.frame nhưng không được đề cập rõ ràng trong công thức của bạn và thay thế dấu chấm bằng các biến mất tích đó.
Chăm sóc chia sẻ liên kết đến hướng dẫn? Nghe có vẻ thú vị. – cheeesus
@cheeesus ... Tôi đã trải qua quá trình khai thác dữ liệu ebook trong R với các nghiên cứu điển hình ... ở đó bạn có thể tìm thấy nhiều ví dụ thú vị hơn như vậy. – Ankita