There is a featured WebmasterWorld thread on the topic of how Google treats affiliate links and if there are ways to hide your affiliate links from Google.
There is discussion that Google will lower your rank of a web page, if it has an affiliate link on that page. I honestly do not know if that is a true statement. The typical issue with affiliate links, is not the link, but the fact that Google wants to show the best single unique result in the search listings and not the same ten results from ten different web sites. Affiliates typically sell the same product and often have the same content on their site, with various changes to the template and content. Google wants the searcher to get one of those sites and not all of them.
So I really do not think an affiliate link is the signal Google uses to "demote" a page in the search results. It is likely more about how unique that page is.
But let's say Google does look for affiliate links. The thread discusses how you can possibly hide that link from Google, so that you don't suffer any loss for having it.
Some suggest using JavaScript, but Google now crawls JavaScript. Some suggest using a special directory for the link and then robots.txt that directory out and also nofollow the link. Some even go as far as suggesting cloaking the link out for GoogleBot and showing it to everyone else.
Whatever route you go, be careful with all these methods. And think hard, how unique is your page from the 300 other affiliates selling the same product or service?
Forum discussion at WebmasterWorld.