Tôi tò mò muốn biết liệu R có thể sử dụng eval()
chức năng của nó để thực hiện các phép tính được cung cấp bởi ví dụ như một chuỗi không.
Đây là một trường hợp phổ biến:
eval("5+5")
Tuy nhiên, thay vì 10 tôi nhận được:
[1] "5+5"
Bất kì giải pháp nào?
eval(parse(text = *))
các giải pháp giả mạo.
QQ = c('11','12','13','21','22','23')
, ví dụ: QQ = c (..., 'ij', ..) với i, j khác nhau trên một phạm vi có thể thay đổi từ chạy sang chạy. Đối với ví dụ này và các ví dụ tương tự, tôi có thể viết tập lệnh dưới dạng paste( "QQ = c('", paste(rep(1:2,each=3),1:3, sep="", collapse="','"), "')",sep="")
và tùy chọn eval(parse(text=...))
tạo vectơ QQ trong môi trường làm việc theo kịch bản. Điều gì sẽ là cách mã hóa R thích hợp để làm điều này, nếu không phải với "text = ..."?
string
? Câu trả lời của Martin Mächler xứng đáng nhận được nhiều sự ủng hộ hơn.