By default, chunks are evaluated considering the folder containing the Rmd file as the working directory. If you want to change that, you can use setwd function and specify full path of your preferred directory.
Another option may be the knit_root_dir argument if the render function.
Finally, I know that there is a package here which is very popular in this context. Somehow I have never used it, but you may try that out and it may simplify the process as well.
Hope this helps.