require('fortunes') fortune('106') Personally I have never regretted trying not to underestimate my own future stupidity. -- Greg Snow (explaining why eval(parse(...)) is often suboptimal, answering a question triggered by the infamous fortune(106)) R-help (January 2007) So if eval(parse(...)) is suboptimal what is another way to do accomplish this?
I am calling some data from a website using RCurl, what i get after using fromJSON() in the rjson package is a list within a list. Part of the list has the name of an order number that will change depending on the order. The list looks something like:
$orders $orders$'5810584' $orders$'5810584'$quantity [1] 10 $orders$'5810584'$price [1] 15848 I want to extract the value in $orders$'5810584'$price
Say the list is in the object dat. What I did to extract this using eval(parse(...)) was:
or_ID <- names(dat$orders) # get the order ID number or_ID "5810584" sell_price <- eval(parse(text=paste('dat$',"orders$","'", or_ID, "'", "$price", sep=""))) sell_price 15848 What would be a more optimal way of doing this?
matchto get the position of the name innames(dat$orders).