How can I retrieve data from alternate database using wpdb class?

After instantinating a wpdb the instace vars holding the table names are still not present. You need to call the set_prefix() method, in order to setup all table names according to your other wordpress table prefix. (Very likely this will be wp_ in your case).

$newdb = new wpdb( DB_USER , DB_PASSWORD , DB_NAME , DB_HOST );
var_dump($newdb->posts); // NULL = not good

$newdb->set_prefix('wp_');
var_dump($newdb->posts); // 'wp_posts' yeah!