I'm an advocate for using the right tool for the job. There are typically two requirements to do data science:
- Libraries (because you don't want to reinvent the wheel at every corner)
- Performance (particularly if dealing with large amounts of data)
Python and R are the right tools. They offer the largest number of high-quality libraries, and though slow on their own, they perform well thanks to libraries written and optimized in fast languages like C and Fortran.
Some like alternatives like Julia and Scala. These are faster languages on their own and have a decent amount of libraries, though you might still run into some situations where suitable libraries are available in Python or R, but not Julia or Scala.
With languages like Elixir, you're are for the most part on your own. The amount of data science specific libraries is limited, and the Elixir community - though wonderful - is mostly focused on distributed computing and web development, so don't count on lots of support there.
In short, can you? Technically yes, and there is no harm in experimenting, but you're making your life significantly harder.
Keep also in mind that, contrary to popular belief, Elixir is not a fast language when it comes to single-thread performance. Depending on the task at hand, you'll find that Ruby is just as fast or even faster in some instances.
Don't get me wrong, Elixir is a great language and it's amazing at what it does best, it's just that it's not the kind of language I'd reach out to first for mathematical computations.