ETL with Python

แชร์
ฝัง
  • เผยแพร่เมื่อ 22 ส.ค. 2024

ความคิดเห็น • 50

  • @mohsenhaghjoo1377
    @mohsenhaghjoo1377 2 ปีที่แล้ว +4

    Hi Doug, many appreciations! You are a real teacher that makes things smooth to understand.

  • @arejoshi1009
    @arejoshi1009 4 หลายเดือนก่อน +1

    Really good example and explanation, I learned a lot. Thanks for sharing this class.

  • @mjpender9443
    @mjpender9443 3 ปีที่แล้ว +4

    Hi Doug. Really learning a lot from your ETL tutorial. I had a data mismatch problem for the date and drove myself crazy until I realized that you have a capital Y for the %Y-%m-%d .

  • @amritasrivastva
    @amritasrivastva ปีที่แล้ว

    You are a great example of a good teacher! Learned so much from video. Thank you!

  • @ogechimaryann1082
    @ogechimaryann1082 ปีที่แล้ว

    This is clear and concise. I love your teaching👍👍

  • @marc-antoinej-l1829
    @marc-antoinej-l1829 3 ปีที่แล้ว +2

    Very good presentation. Easy to understand.

  • @sajadsafarveisi4512
    @sajadsafarveisi4512 2 ปีที่แล้ว

    The talk really increased my knowledge. Thank you.

  • @mercydabbs3330
    @mercydabbs3330 2 ปีที่แล้ว +1

    Thank you! I am just learning python but I can follow your very detailed explanation! Thanks!

  • @Mahmoud-ys1kt
    @Mahmoud-ys1kt ปีที่แล้ว

    It was great thank you
    We are waiting for more

  • @eliotsygha9489
    @eliotsygha9489 3 ปีที่แล้ว +2

    Thank a lot for the presentation, it has been very useful for building my data warehouse while BI course.

  • @nocoldizTV
    @nocoldizTV 3 ปีที่แล้ว

    This just saved my life thanks!

  • @DineshCTech
    @DineshCTech ปีที่แล้ว

    Excellent presentation!

  • @ernestoflores3873
    @ernestoflores3873 2 หลายเดือนก่อน

    Beatifull!

  • @nimrodr7675
    @nimrodr7675 3 ปีที่แล้ว

    That was extremely helpful and interesting! thanks for that!
    the left join part was interesting :)
    More videos and examples please

  • @darkknight0258
    @darkknight0258 2 ปีที่แล้ว

    this is so cool, thank you so much

  • @mkgm001
    @mkgm001 2 ปีที่แล้ว

    Super tutorial Bro! Thanks

  • @neonatal123
    @neonatal123 2 ปีที่แล้ว

    Thank you Doug!

  • @meowreacti
    @meowreacti 2 ปีที่แล้ว

    Tks a lot for this!

  • @sanishthomas2858
    @sanishthomas2858 7 หลายเดือนก่อน

    Nice ..but looks very complex code.. great work

  • @maybenew7293
    @maybenew7293 ปีที่แล้ว

    WHAT A WORK!

  • @tuandino6990
    @tuandino6990 2 ปีที่แล้ว

    Thank you sir

  • @MisterKorihor
    @MisterKorihor 2 ปีที่แล้ว +2

    I'm not sure it's necessary to have all the try-except blocks. If an exception is thrown, and there is no try block surrounding it, then Python automatically aborts the script.

    • @elduggio99
      @elduggio99 2 ปีที่แล้ว +1

      That's a fair observation. For a one-shot ETL script like this it depends on who will be running the script and whether you want to provide friendlier feedback than a stack trace.

    • @ASHISH517098
      @ASHISH517098 ปีที่แล้ว

      except block will let the user know exactly which block is not running in a user friendly message

    • @MisterKorihor
      @MisterKorihor ปีที่แล้ว

      ​@@ASHISH517098 If it's an error that the user can do something about, then I agree with you. But if the user is just going to forward the error to a programmer to fix, then a stack trace is perfectly adequate.

  • @zberteoc
    @zberteoc 11 หลายเดือนก่อน

    If you used the "join" instead of "outerjoin" you would not need the filtering step, "join" in PETL seems to be equivalent to SQL INNER JOIN while "outerjoin" to SQL LEFT JOIN.

    • @meanmedianandmoose9276
      @meanmedianandmoose9276  11 หลายเดือนก่อน +1

      Thanks for commenting! We can't use an inner join because the exchange rate API does not return a value for every date - weekends and holidays have no updates. We can have expenses on days without exchange data, so we first need to fill down to fix up missing values.

    • @zberteoc
      @zberteoc 11 หลายเดือนก่อน

      @@meanmedianandmoose9276 got it. I think I missed the part where the "filldown" excel like functionality is explained.

  • @lequi3259
    @lequi3259 ปีที่แล้ว

    Good

  • @brianc.9402
    @brianc.9402 2 ปีที่แล้ว

    This was awesome. Thank you so much for putting this together. May I ask a question?... I'm new to python. On line 35 when printing out the BOCResponse variable, you did print(BOCResponse.text)... what is the '.text' line or what does that refer to? Is that part of the Requests module or a function of the Requests Module?

    • @meanmedianandmoose9276
      @meanmedianandmoose9276  2 ปีที่แล้ว +2

      text is a property of the Response class in the Requests module, which BOCResponse is an instance of: docs.python-requests.org/en/master/api/#requests.Response.text

    • @brianc.9402
      @brianc.9402 2 ปีที่แล้ว

      @@meanmedianandmoose9276 Thank you for the reply!

  • @nathangarst1310
    @nathangarst1310 ปีที่แล้ว

    This is so cool! This video is a bit beyond me though as a new Python learner, but I see the utility. I'm trying to move up in my analyst career. How do I learn this stuff? Should I go back to school for a BS in CS, or just learn by doing projects like this on my own?

    • @skinnymanolo4400
      @skinnymanolo4400 ปีที่แล้ว

      I think you’re better off self-learning as this is at most intermediate level python.

  • @redfeather22sa
    @redfeather22sa 2 ปีที่แล้ว

    Brilliant Video.!! Thank you ❤️ but what is that module you were referring to before 41:00 that accepts formulae and you can do a lot with ? Pandas ? Numpy,? Openpyxl ? Mongo or mundle I think it'd called (on medium recently ). I need to look it up on. Wait a sec I'll be back .
    No it can't be ... Mitosheet ??? Bamboolib?? I don't think so (but those are cool - have yet to try them. Need to reimport/merge my jupiter labs from the old machine & it's environment variables) . But Would be interested to know what you were referring to?
    Or did you just mean python itself ? (Which it does have? [Formulae ability ofcourse!]) .
    Definitely though tell me if you were referring to something else . All the best & thanks for your video - it was absolutely amazing . !!

    • @elduggio99
      @elduggio99 2 ปีที่แล้ว +2

      petl is the module we're using here, but the capabilities around excel are drawn from openpyxl.

    • @redfeather22sa
      @redfeather22sa 2 ปีที่แล้ว

      @@elduggio99 ah !! Ok thank you !!

  • @dizetoot
    @dizetoot 3 ปีที่แล้ว +1

    Hello, you mentioned near the beginning of the talk that you did a similar demo using SSIS on the exchange rate data and had shared the link in the chat. Could you share it here as well please?

    • @meanmedianandmoose9276
      @meanmedianandmoose9276  3 ปีที่แล้ว +3

      Sure thing: github.com/dsartori/SSIS-API-Demo

    • @dizetoot
      @dizetoot 3 ปีที่แล้ว +1

      @@meanmedianandmoose9276 thanks!

  • @mohammedsafiahmed1639
    @mohammedsafiahmed1639 2 ปีที่แล้ว

    Hi Doug, nice tutorial.
    However, I dont see anything that couldnt be achieved using pandas and requests primarily. Also, instead of doing the outer join and then filtering the rows that you dont want, couldnt we have just done a left join by keeping the expenses table as the left one? Would've made the code simpler.

    • @meanmedianandmoose9276
      @meanmedianandmoose9276  2 ปีที่แล้ว +2

      Hi Mohammed thanks for watching! We can't use a left join because the exchange rate API does not return a value for every date - weekends and holidays have no updates. We can have expenses on days without exchange data, so we first need to fill down to fix up missing values. Pandas could be used in this example because the dataset is very small, but it is not something I recommend for automated ETL as it is less memory-efficient than petl. Great tool for exploring data though.

  • @joaopedrosenna1
    @joaopedrosenna1 3 ปีที่แล้ว +2

    petl is better than pandas to work with data transformation!

  • @muhammadshoaibkhan2378
    @muhammadshoaibkhan2378 ปีที่แล้ว

    Can share some more api like this bank of Canada API, from where we can get the data?

  • @arjunjadhav3062
    @arjunjadhav3062 3 ปีที่แล้ว

    I need to load ready API data into mongodb please make one video on that

  • @raulaguilar3023
    @raulaguilar3023 11 หลายเดือนก่อน

    Hi Doug. Is not a good idea try to invent the hot water. There aré many tool in the market in order to create ETL in a very efficient way. Any way for Python teaching pourpouse Is a good exercice. Regards

    • @dingaroo2003
      @dingaroo2003 หลายเดือนก่อน

      Not all organizations will buy 3rd party etl tools

  • @BhaveshKumar-dz8hq
    @BhaveshKumar-dz8hq 6 หลายเดือนก่อน

    won't be the outer join highly memory inefficient