I do most of my work (if not all) from home. I find at times, that I can easily get distracted (especially if i'm working at the computer!). Other times, I find that I lack motivation and willpower; time management is also a problem for me.
You do miss out on the social interaction (although some of that is alleviated through digital technologies like VoIP, email, etc.)
On the other hand, there are benefits - you can work to the hours you want (within reason!), relax at home, save on travel, etc.
In my opinion, the benefits outweigh the drawbacks; but personally, I would rather work at an office, to keep myself in focus.
When it comes to working at home vs in office it really comes down to the individual, as well as their job. My current full time job is the same job that my mother had, data analyst. You can work in office (you have to at the start) but you can also work from home. For this type of job, working at home is better. In office, there's too many people, it can be noisy, and you actually have to get dressed and leave the house. Working from home gives you so much flexibility and freedom. LADIES AND GENTLEMEN, I DO NOT WEAR PANTS WHILE WORKING! (okay, fine, I do, but they're sweat pants!)
Aside from that, if I'm hungry, I can just go to the kitchen and make some food. In jobs like that, working from home is really the absolute best thing to do. However, it's not for everyone. My mother and I are alike in that we are not social people. We don't like being around large groups of people (I don't like being around anyone *extremely introverted*), but there are people who like to work in office and actually get out of the house. Either one has their fair share of advantages and disadvantages.
Yes i work from home. Income is not stable but its like a challenge for me. I learn new things, implement them and get results. When results are good, i try to improve them. When results are not according to my desire then i analyze where am i mistaken. I learn from my mistake. Its a challenging job and i like it this way.