# Benchmarking Julia vs. Python vs. R with PyCall and RCall

**URL:** https://discourse.julialang.org/t/benchmarking-julia-vs-python-vs-r-with-pycall-and-rcall/37308
**Category:** Performance
**Tags:** benchmarktools
**Created:** [April 10, 2020, 1:08am UTC](https://discourse.julialang.org/t/benchmarking-julia-vs-python-vs-r-with-pycall-and-rcall/37308 "2020-04-10T01:08:00Z")
**Posts on this page:** 1
**Showing post:** 4

<div class="post-metadata">

### Author: ![lungben](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/lungben/32/12314_2.png) [@lungben](https://discourse.julialang.org/u/lungben)
#### Post date: [April 10, 2020, 7:09am UTC](https://discourse.julialang.org/t/benchmarking-julia-vs-python-vs-r-with-pycall-and-rcall/37308/4 "2020-04-10T07:09:58Z")

</div>

Converting Julia Arrays to Python Lists takes some time because they have a completely different memory structure. However, passing Julia Arrays as Numpy Arrays is usually very fast.  
The PyCall overhead is in my experience \<\<1ms if no significant amount of data is transferred. To be on the safe side, I suggest to cross-check the Python and R benchmarks using native Python/ R notebooks.  
I did a comparison of Julia to Python for DataFrames, maybe this is useful for you:

> [@Upload of DataFrame data to databases](https://discourse.julialang.org/t/upload-of-dataframe-data-to-databases/36950):
>
> Hi, for evaluation of a possible projet usage I did a comparison of DataFrames.jl to Pandas, with side-by-side examples and timings: Overall, DataFrames.jl performs very well in my experiments, great work! One functionality I could not find out-of-the-box is for writing the content of a DataFrame to a database (e.g. PostgreSQL), analogue to Pandas df.to\_sql(). A simple implementation of the database upload would be (taken mostly from LibPQ.jl documentation): using DataFrames using LibPQ u…

---

_[View the full topic](https://discourse.julialang.org/t/benchmarking-julia-vs-python-vs-r-with-pycall-and-rcall/37308)._
