R vs Python: Which should you learn for reproducible data science (CC168)

Поделиться
HTML-код
  • Опубликовано: 21 авг 2024

Комментарии • 79

  • @Riffomonas
    @Riffomonas  2 года назад +6

    What would make learning a programming language easier for you?

    • @sudhanpachhain4182
      @sudhanpachhain4182 2 года назад +1

      Great video for people like me who are thinking which programming language to learn.
      Thanks to your videos, I am learning a lot of data visualization in R.

    • @Riffomonas
      @Riffomonas  2 года назад +1

      Thanks for tuning in! Glad to hear the videos are helpful

    • @rishikeshdash12
      @rishikeshdash12 2 года назад

      Interest in learning the language

  • @luisandresmorenocueva3399
    @luisandresmorenocueva3399 2 года назад +14

    Your content is so underated! I just discovered you and I can belive I've been learning data science without you. Keep the friking good content and sharing your knowledge.

    • @Riffomonas
      @Riffomonas  2 года назад +1

      Thanks Luis! I’ll do my best

  • @morgomi
    @morgomi 2 года назад +21

    I use R for machine learning, statistics, vis and for fun :)) I use Python for deep learning and image processing. Both languages are fun but I always love the R community rather than the Python community and I don't know why :))

    • @Riffomonas
      @Riffomonas  2 года назад +1

      Hey Enes - Thanks for sharing!

    • @victordeita3076
      @victordeita3076 Год назад

      Same case here! I use Python for deep learning and R for everything else 😅

  • @johneagle4384
    @johneagle4384 2 года назад +5

    Exactly! I use R, i love R. I tried Python, and I do not know why I did not like it. But, I always tell people that the best language is the one they like the most. By the way, your content is really, really good. Thank you very much!!!. I am learning a lot watching your videos.

    • @Riffomonas
      @Riffomonas  2 года назад

      That’s a great attitude! Thanks for watching 🤓

  • @surfingbilly9654
    @surfingbilly9654 Год назад +7

    Heres my opinion:
    - Go with R, if you are purely going to be doing statistical analysis/reports, especially if you are in specific niche fields, R has access to a lot more specific statistical packages than python so you will be able to run them with one line of code instead of having to hard code them (which can be very tricky and time consuming to do).
    - Go with Python, if you need to do a mix of statistical analysis and software development, for example if you have to integrate data analysis into a backend system, or you have to include web-scraping systems, etc. Basically whenever you have to integrate statistical analysis with software even if you aren't directly responsible for the software side of things.
    - Go with Python, if you are planning to also start learning machine learning/deep learning/neural networks, etc. The packages in python for this are very good (e.g. tensor flow).

    • @Riffomonas
      @Riffomonas  Год назад +1

      Thanks for your comments.

    • @chacmool2581
      @chacmool2581 Год назад +1

      I hear you...but you do know that both TF and Keras are available on R too, right?

    • @victordeita3076
      @victordeita3076 Год назад

      @@chacmool2581and Tidymodels is so beautiful ❤

  • @rickdoesai4084
    @rickdoesai4084 2 года назад +7

    Great stuff! It can be daunting to start CS and be confronted with all these options, if you're self learning it's probably best to just get started and pick a high level language, then work your way towards programming 🤖

    • @Riffomonas
      @Riffomonas  2 года назад

      Thanks. Certainly starting with R or Python is a better choice than C or machine language 😂

  • @user-sb9oc3bm7u
    @user-sb9oc3bm7u Месяц назад

    I love how julia is always a honour guest in these debates

    • @Riffomonas
      @Riffomonas  Месяц назад

      Hey, if your local community uses Julia, go for it. Same goes for Fortran, Haskell, whatever. There's no debate. The only rule is that people need to learn to program. It's best to learn what your local community uses. No interest in engaging in any type of language wars here 🤓

  • @antoniocastan9229
    @antoniocastan9229 Год назад +2

    Really good advice! My first language is spanish and I love speaking in english. I feel the same way about R and Python.

  • @stretch8390
    @stretch8390 2 года назад +1

    Great advice. One thing I wish I could tell myself in hindsight is that if you are working fairly solo going with the language that has the most tooling available for your topic/area will make your life easier when starting out. If you're in genomics/proteomics then it's hard to go past the sheer number and variety of tools available in R, if you're into serious modelling and climate science Julia seems to be excelling in that domain, etc. my 2c added to a good video!

  • @AndikaMcenroe85
    @AndikaMcenroe85 2 года назад +2

    Thanks your video is strengthening my stance as R users among python team :)

  • @bavitang
    @bavitang 2 года назад +2

    Pascal was the first programming language that I learned too! And I'm not that old, they're just slow to update the curriculum in my country 🤣. But I'm eternally thankful to my CS teacher back then because he gave me a good foundation to tackle other languages.

    • @Riffomonas
      @Riffomonas  2 года назад +1

      Absolutely! I remember reading somewhere that the creator of pascal never imagined it would take off like it did in education. He said that if he had known he would have made it a better language. 😂

    • @marc-andrebrun8942
      @marc-andrebrun8942 2 года назад

      It's the same for me;
      I learned first pascal and uses it to run a server on french minitel's network (before internet, in the 80's).
      the syntax is far cleaner than C which is efficient but gibberish, and C++ is a useless mess;
      I am an old tinkerer now and I enjoy functional programming with scheme (racket), a mind blowing LISP dialect
      I gave a try to python and R, just by curiosity and if I need to use them, I will obviously choose R.
      but in racket, there is everything I could need : a minimalist Object Oriented system, an API for building GUI apps, librairies for plotting, for data frames, etc, ...

  • @shashi_kamal_chakraborty
    @shashi_kamal_chakraborty 2 года назад +2

    Agreed! Nicely explained with apt justifications👍 Well, I decided to go with the both langs, being little biased towards R.

  • @Daikoro
    @Daikoro 2 года назад +2

    This video was great! Would you perhaps do a video on how to read or run Python code in R? Just to demonstrate that python resources and functions are still accessible to R-users

    • @Riffomonas
      @Riffomonas  2 года назад

      So you want me to learn some python?! Lol. Let me see what I can work up 😂

  • @bigboy44110
    @bigboy44110 2 года назад +2

    Add me to the stack of folks who are saying thanks. My journey with programming was, very difficult. The first language I learned and LOVED was QBASIC [an off shoot of BASIC] as a kid. And I just knew I was going to be making video games.
    Fast forward to college and I STRUGGLED to learn C & C++. I switch majors from computer science to photography lol.
    I had every kind of warehouse & retail job. But my current job needed someone who could use excel and SQL. I was proficient in excel and new basics of SQL and zilch Python & R. Then two data analysts above me left the company and in a panic hired me, someone who had no data analysis history, to do basic daily tasks.
    I didn't want to get fired or put back down into my call center position. So I youtubed and stack overflowed and two years later people are calling me an experienced data scientist. I have no idea, at the age of 40, why R is my jam. But I thank you for helping me along my journey.

    • @Riffomonas
      @Riffomonas  2 года назад +1

      Oh that’s so awesome to hear! Well done and good of you to stick with it. Proud of you! 🤓

  • @cyrillejar1914
    @cyrillejar1914 2 года назад +1

    Thanks ! I was a bit afraid you told us python was better ! Before this video I was wondering if I had to learn python, whereas I worked hard to have a basic R level...

    • @Riffomonas
      @Riffomonas  2 года назад +1

      Hi Cyrille - Glad I could help! I keep meaning to learn Python, but I just can't justify the time :)

  • @sopheaed
    @sopheaed 2 года назад +3

    I love the way you explained it.

  • @jahidhossain1925
    @jahidhossain1925 2 года назад +3

    i really like your videos.. your videos are much appreciating for me to learn R... could you please make a series of videos for biological data with R?

    • @Riffomonas
      @Riffomonas  2 года назад +3

      Thanks! Um… I think all of my videos (except for the early ones) have used biological data 🤓

  • @jaredwsavage
    @jaredwsavage 2 года назад +2

    I use both R and Python, but I tend to use R a lot more. I find it easier and more more interpretable and has some amazing libraries like the Tidyverse andTidymodels, and even the built in functions are great (And RMarkdown is just superb). The main reasons I learned Python at all is that is the most common language in the data science community, particularly on Kaggle. A lot of delevopment also goes into python first, for example, Tensorflow/Keras are developed primarily for python and while these are also available in R, it's basically a thin reticulate wrapper around the Python version.
    My main problem with Python is the lack of consistency. For example, the Zen of Python states: "There should be one-- and preferably only one --obvious way to do it." Why then, is there at least four separate ways of adding layers to a Keras DNN? I know this isn't strictly Pythons fault, but it is typical of the Python ecosystem in general.

    • @Riffomonas
      @Riffomonas  2 года назад +1

      Thanks. Yeah as I tried to point out, I think every language has its warts. We have to figure out which annoy us the least 😂

    • @jaredwsavage
      @jaredwsavage 2 года назад

      @@Riffomonas I certainly agree with what you said about there not being any perfect programming language. I love R, but debugging in R is painful.

  • @addicted2youtub
    @addicted2youtub 2 года назад +1

    Learn both. Both are good complementary to each other.

    • @Riffomonas
      @Riffomonas  2 года назад +1

      In an ideal world, maybe. My audience is often juggling another science with data science and data science is there to make their lives easier. It’s hard to recommend “both” when learning one already seems too daunting to them

  • @niceday2015
    @niceday2015 Год назад +1

    For a new beginner, get on the bus no matter R or Python, both are great! And it does not bother to learn the other one for
    specific usage if it is needed.😁

  • @dimitrioskioroglou4316
    @dimitrioskioroglou4316 Год назад

    I totally agree with the suggestion "learn one language and learn it well". But I don't agree with the suggestion "learn the language that is used by your peers". Sure, using the same language comes handy in situations where someone needs some help over a bug. However, it can also be limiting since different languages may provide different solutions to the same problem. So, peers can also benefit from a different mindset that is brought by a different language. Peers should be able to communicate in terms of programming concepts. Let's not forget that algorithms are described to peers in a form of a pseudocode. You gave as an argument the example of Argentina where one should know Spanish in order to communicate. My counterargument would be mathematics. A universal language which many can understand and then translate it into R or Python code. This is my analogy for communicating with programming concepts like "for loops", "if else statements", "functions", "object oriented programming", "functional programming", "hash tables", "data types" etc. So my suggestion would be learn one language, learn it very well and at the same time learn how to express yourself programmatically in a way that can be understood by your peers. And always comment your code.

  • @milikest
    @milikest Год назад

    Since both languages have a large amount of users, they are going to be useful for all the kind of usage. Because users will create a way to do a new task with that language. They were saying statisticians are using R more but I don't know why I couldn't find anything about statistics that I can't do with python. And some people say it has better options to make visuals like charts with R but I love python charts especially with the module named Bokeh, although there is a rbokeh it is not updated. I think R is much better when data manipulation. It is very easy to slice or change some columns in a tabular data. And R let me create a pdf or html file for my R markdown files which is great for publishing something. And shiny apps in R is really a big deal. Interactivity of data science is great. On the other hand they use python not just for data science, it is being used for general purpose of programming. So there are pros and cons. I believe both language is very useful.

  • @leonelemiliolereboursnadal6966
    @leonelemiliolereboursnadal6966 2 года назад +1

    Thanks for sharing your experience!

    • @Riffomonas
      @Riffomonas  2 года назад

      My pleasure - thanks for watching!

  • @WahranRai
    @WahranRai 7 месяцев назад

    R at the beginning was very simple to write and understand.
    R was similar to other programming languages (Python, Matlab...).
    Unfortunately Hadley Wickham and the Rstudio team destroyed this simplicity by adding the %>%, |> pipe (supposedly for compact code) and the tidyverse, tibble ...

    • @Riffomonas
      @Riffomonas  5 месяцев назад

      Sorry we disagree 😂 I love the pipes and in my eyes it makes for cleaner code

  • @adan8657
    @adan8657 2 года назад +2

    Nobody speaks a language in my office.😅 After Excel, DAX, SQL, now I'm learning R

    • @Riffomonas
      @Riffomonas  2 года назад

      Sounds like you’ll have to teach them!

  • @russtin1
    @russtin1 2 года назад +3

    I’m waiting for FORTRAN IV to make a long overdue comeback

    • @Riffomonas
      @Riffomonas  2 года назад

      I’ve heard that most climate models are written in Fortran so if that’s you’re community it would seem like a pretty reasonable choice. 😂 I still remember my undergrad advisor had a million punch cards which made for great book marks 🤓

    • @danielvaulot5105
      @danielvaulot5105 2 года назад +1

      @@Riffomonas My first programming experience was with FORTRAN and punch cards... then I want through HP programming language, BASIC, Assembly to finally reach Pascal which was so much better than all these (so not the hardest language to learn...) and I used to program 10,000 lines for a flow cytometry analysis program called CytoWin. Could probably do with a few less lines with R and shiny.....

  • @user-ug4ow1qq2h
    @user-ug4ow1qq2h 2 года назад +1

    I would say if you start from scratch, learning Python is a better choice. It's more flexible general purpose language, and its syntax is close to other popular languages. R has more ready-to-go packages, but its syntax is so bizarre, that it looks like something that was invented by a person high on mushrooms, so in case if someone has to switch, it's going to be harder with R... Said by someone who just recently used R to create a couple of plots...

    • @Riffomonas
      @Riffomonas  2 года назад +1

      Thanks. I stand by my general recommendation that people should identify what their local community is using and learn that language

    • @ShaunYCheng
      @ShaunYCheng Год назад

      For people with no local community, internet is the community, in that case, what should we learn?

  • @Sonntagssoziologe
    @Sonntagssoziologe 2 месяца назад +1

    As a German, I can understand that you want to learn Spanish in Argentina and not German, but it still makes me sad. 😢

    • @Riffomonas
      @Riffomonas  2 месяца назад

      Hah!

    • @martinagustinsilva6481
      @martinagustinsilva6481 21 день назад +1

      I'm Argentinian. In my country, there are communities of German people and German descendants who mostly speak only German. So, if you move to one of those communities, you might not have any language problems XD

    • @Sonntagssoziologe
      @Sonntagssoziologe 21 день назад +1

      @@martinagustinsilva6481 Thank you very much! That gives me hope for the days when I have to flee Germany.

  • @LulusCommentdansR
    @LulusCommentdansR 2 года назад +2

    This is the best video I have ever seen on this stupid (sorry) topic... If you get in my lab.. you will gonna have to speak R.. dot!

  • @MD-im1jx
    @MD-im1jx 2 года назад +1

    Thanks for a great video!!

    • @Riffomonas
      @Riffomonas  2 года назад

      My pleasure! Thanks for watching 😊

  • @imranmbp
    @imranmbp 2 года назад +1

    Thanks...a question, if there is interpreter that convert our python code to c++ so that it fastly execute

    • @Riffomonas
      @Riffomonas  2 года назад

      Sorry but I know nothing about Python. In R you’d want to use the Rcpp package

  • @MmmBopsPops
    @MmmBopsPops Год назад

    6:19 - R is already installed on macOS? News to me!

  • @chuckbecker4983
    @chuckbecker4983 10 месяцев назад

    Learn sql as a (the) cornerstone of data analysis. SQL. First.

  • @nitinkapoor4752
    @nitinkapoor4752 Год назад

    If someone is asking ‘Should I learn Python or R?’..the answer is a clear ‘None’. Because you are not ready yet.
    You should go and study statistics and advanced models and techniques like Time-Series analysis… ARMA, ARIMA, ARCH, GARCH ..what is Dickey-Fuller test… what’s F statistics what’s T statistics …what’s Hetroscadisticity ..what does ‘stationary’ mean wrt to Time Series etc…
    Once you have learnt that, you will realise that the Python Vs R debate is futile. 😂😂😂
    One very very senior computer scientist (someone who has built models for Yahoo to Google over last 20 years) keeps getting asked this question and he says my answer to the people is ‘Did you send this question from windows/intel or Mac-OS?’

    • @Riffomonas
      @Riffomonas  5 месяцев назад +1

      I'm afraid that this type of thinking is a type of gatekeeping that will keep people from ever being able to analyze their own data. I guess we disagree - sorry!

  • @peteralfred7006
    @peteralfred7006 2 года назад +1

    From now onwards accept me as your lifetime student please. I must get to your first videos and move along to buildup the foundation on understanding R. Sorry I troubled you a lot by asking questions via email

    • @Riffomonas
      @Riffomonas  2 года назад +1

      Accepted! My secret goal is to create a system where everyone can join my lab 🤓

    • @peteralfred7006
      @peteralfred7006 2 года назад

      @@Riffomonas thank you for your kindness, appreciated

  • @chacmool2581
    @chacmool2581 Год назад

    Bro, you spend too much time getting to the point. An explanation of interpreted vs. compiled languages? Really? Shall we go back to the invention of the transistor?
    It's either Python or R for DS. Preferably you are proficient in both. When someone says, say, Pandas or 'dplyr', you should know right away what they are talking about and follow the conversation. When someone says 'instantiate and fit' the model, or facet_wrap the plot, hopefully you know what pertains to what language. En you are given a stats heavy task, what do you reach for? When you have deep leaning stuff, who you gonna call?