Công thức là một tính năng rất hữu ích của các hàm thống kê và đồ họa của R. Giống như tất cả mọi người, tôi là một người sử dụng các chức năng này. Tuy nhiên, tôi chưa bao giờ viết một hàm nhận một đối tượng công thức làm đối số. Tôi đã tự hỏi nếu có ai đó có thể giúp tôi, bằng cách liên kết với một giới thiệu có thể đọc được về phía lập trình R này, hoặc bằng cách đưa ra một ví dụ độc lập.Công thức trong các hàm do người dùng định nghĩa trong R
10
A
Trả lời
6
Bạn có thể sử dụng model.matrix()
và model.frame()
để đánh giá công thức:
lm1 <- lm(log(Volume) ~ log(Girth) + log(Height), data=trees)
print(lm1)
form <- log(Volume) ~ log(Girth) + log(Height)
# use model.matrix
mm <- model.matrix(form, trees)
lm2 <- lm.fit(as.matrix(mm), log(trees[,"Volume"]))
print(coefficients(lm2))
# use model.frame, need to add intercept by hand
mf <- model.frame(form, trees)
lm3 <- lm.fit(as.matrix(data.frame("Intercept"=1, mf[,-1])), mf[,1])
print(coefficients(lm3))
trong đó sản lượng
Call: lm(formula = log(Volume) ~ log(Girth) + log(Height), data = trees)
Coefficients: (Intercept) log(Girth) log(Height)
-6.63 1.98 1.12
(Intercept) log(Girth) log(Height)
-6.632 1.983 1.117
Intercept log.Girth. log.Height.
-6.632 1.983 1.117
Các vấn đề liên quan
- 1. Các hàm do người dùng định nghĩa SQLite trong Lisp
- 2. Gỡ lỗi các hàm do người dùng định nghĩa PostgreSQL
- 3. Các hàm do người dùng định nghĩa với LessCSS?
- 4. Làm thế nào để quá tải các hàm do người dùng định nghĩa trong Matlab?
- 5. Làm thế nào để sử dụng các hàm do người dùng SQL định nghĩa trong .NET?
- 6. Số lượng đối số không xác định cho các hàm do người dùng định nghĩa SQL?
- 7. tính công thức do người dùng xác định (với C++)
- 8. Các hàm tổng hợp do người dùng định nghĩa trong mệnh đề Oracle PIVOT
- 9. Tạo/Sử dụng các hàm do người dùng định nghĩa trong System.Data.SQLite?
- 10. Vị trí đặt các hàm do người dùng định nghĩa trong Angular JS?
- 11. cách tự động tải các hàm do người dùng định nghĩa trong mathematica
- 12. danh sách hiển thị mysql của các hàm do người dùng định nghĩa trong phpmyadmin
- 13. Cách sử dụng hàm do người dùng định nghĩa trong SQL từ một db khác
- 14. Chạy hàm do người dùng SQL định nghĩa trả về boolean, trong đó khoản
- 15. Các cấu trúc do người dùng định nghĩa với hàm mex MATLAB
- 16. Các hàm tổng hợp do người dùng định nghĩa hữu ích nhất
- 17. Xóa tất cả các đối tượng do người dùng định nghĩa trong không gian làm việc R
- 18. Physical Boost.Units Literals do người dùng định nghĩa
- 19. Phương thức __mul__ do người dùng định nghĩa không giao hoán
- 20. Danh sách các hàm do người dùng xác định toàn cục trong JavaScript?
- 21. C++ 11 literal do người dùng định nghĩa
- 22. Các tệp natvis do người dùng định nghĩa trong Visual Studio 2012
- 23. Có thể tạo các phương thức * có giá trị * trong một kiểu SQL CLR do người dùng định nghĩa không?
- 24. Tạo, thả và chèn một bảng tạm thời vào một hàm do người dùng định nghĩa
- 25. Python - Các lớp do người dùng định nghĩa có các phương thức __cmp __() và __hash __() theo mặc định? Hoặc là?
- 26. cách tạo phân phối gaussian bằng cách sử dụng hàm mysql do người dùng định nghĩa
- 27. Làm cách nào để thêm hàm SQL do người dùng định nghĩa vào khung thực thể?
- 28. Haskell: hiển thị/nhận danh sách tất cả các chức năng do người dùng định nghĩa
- 29. Có thể sử dụng biến MySql do người dùng định nghĩa trong .NET MySqlCommand không?
- 30. Riêng biệt() trả về các bản sao với một kiểu do người dùng định nghĩa
Cảm ơn, rất thú vị. Tôi cũng hiểu tại sao các gói glmnet hoặc ther có thể không cung cấp khả năng này: nó sử dụng ma trận thưa thớt trong Ma trận gói, có thể không được xử lý với model.matrix(). – gappy