Correction: when doing the first timing exercise I say "microseconds". I mean "milliseconds"! :)
@DonRenny8310 күн бұрын
Applying the function to each year doesn't work for me somehow. It gives me " ValueError: cannot insert Year, already exists " . Otherwise great series so far though! Maybe an update since it has been rolled out to current channel?
@thamilanban12 күн бұрын
This series is great and I marvel at your depth of knowledge. Please do more videos on data science.
@dimamedvedev412413 күн бұрын
Great explanation. But why copy formula in each cell in second example is bad?
@cuongdinhvan532721 күн бұрын
Great! Thank a lot! Could you share source of code and excel file 🙏
@FredericLEGUEN-Excel27 күн бұрын
Great video Owen, I have learn so much with a single video 😁 Great job 👏
@ExcelambdaАй бұрын
Great video!! Algorithm showed me this video now and I got in because your name rings a bell. Maybe from a forum but I do not know which one. Anyhow, liked, subscribed ✌🏼😉 And for a solution, there is one very simple, any lambda helper functions free: =LAMBDA(n, t, k, LET( c, SEQUENCE(, MAX(t)), i, t >= c, HSTACK(INDEX(n, TOCOL(IFS(i, SEQUENCE(ROWS(t))), 2)), TOCOL(IFS(i, c) + TEXTBEFORE(k, "-") - 1, 2)) ) ) n, names ; t, tickets nr. ; k, range
@mahmoodhumodahАй бұрын
how I can get the dataset
@AdolfoLeonSepulvedaАй бұрын
Thanks, it's amazing!
@carlosrocha38332 ай бұрын
Achei que o local para digitar o código, fosse algo como o VBE.
@samsal0732 ай бұрын
That is awesome man . Thank you
@Roger-vw2yu2 ай бұрын
I did it in Excel and I constantly asked myself how do I do the same in SQL?, and you solved it very easily, thanks ... this video is GOLD
@Robls5015102 ай бұрын
I get the following error when running the Python code "ImportError: Missing optional dependency 'lxml'. Use pip or conda to install lxml." I went over the code multiple times to make sure I did not type something wrong. Help please.
@Robls5015102 ай бұрын
Just subscribed to the channel. Thanks for posting this very interesting playlist about Python in Excel.👍
@abbottkatz88302 ай бұрын
another emulation of MAP in this case: =(A2:A6="a")+(B2:B6="a")>0
@NilssonGonsalves3 ай бұрын
I have tried to learn this in the past through videos and books, no one has presented it as well as you have. Thank you, Sir.
@Fxingenieria3 ай бұрын
Thank you, excellent explanation of MAP.
@DailyVerse-langsong4 ай бұрын
The best
@philippebrillault11404 ай бұрын
I am impressed! How do you know the SINGLE trick? Thanks for sharing! PS: SINGLE works on a French implementation. PPS: the PIVOTEVERYNROWS function doesn not need the "n" argument which could be calculated by COUNTA(UNIQUE(attribute)) (unless I am missing an other usage of the function) Thanks again
@professorserna4 ай бұрын
The statement df['Team']=df['Team'].replace('','No team') does not work for me. It produces a "None" instead of 'No team'
@professorserna4 ай бұрын
I selected the "Team" column, did a Ctrl + H with the "Find what" field empty and the "Replace with" field containing a single quote and, after that, the statement "df['Team']=df['Team'].replace('','No team')" worked.
@TopBam4 ай бұрын
I don't know what happened, but pivotby is not taking text as a value anymore, at all. Error values only.
@theo52605 ай бұрын
*promo sm* 😱
@conquizapateria71345 ай бұрын
Just Great application of reduce
@nusrathcassim14166 ай бұрын
Thank you soo much❤
@jerrydellasala76436 ай бұрын
Thanks for TELLING us what the challenge is. I realize that letting us know where the FREAK to download it is classified. SHHHHHH! 🤪
@memolingvo55636 ай бұрын
How to install the Python libraries which are missing in the Python for Excel?
@cedjulemckeever6 ай бұрын
You are the man!!!! I don't know why, but you had 36 views and only 5 "Thumbs Up." 😎
@flexyourdata6 ай бұрын
It was an interesting nut to crack. Cheers!
@hectorpalo63576 ай бұрын
Thanks for share know how, in my case, I had to use xl("tripdata[#ALL]), because odbc + SQLite don't retrieve headers.
@cedjulemckeever7 ай бұрын
Your videos just seem to pop up on my KZbin recommendations for some reason. I was wondering if I could make a request? I worked all day yesterday on Excel Bi's Power Query Challenge 161 using Chat GPT4, Data Analysis and Chat GPT 4 could not come up with a Python solution to get the listed results. I also noticed that very few regulars that answer challenges did not submit a solution. Usually, ChatGPT4 comes up with a Python solution in one or two tries, but not this one. I know you are busy, so if you do not have the time, skip it.
@flexyourdata7 ай бұрын
I'll take a look and see what I can come up with. 👍
@cedjulemckeever7 ай бұрын
@@flexyourdata The only reason I mentioned it was because I think only three people took a stab at it. Usually there are over ten replys.
@flexyourdata6 ай бұрын
@@cedjulemckeever I took a look and came up with a Python in Excel solution. I'll make a video about it soon. For me at least, I think the way the challenge was described was a bit confusing.
@cedjulemckeever6 ай бұрын
@@flexyourdataYes, it was. I hope I am not wasting your time. Have a great day,
@cedjulemckeever7 ай бұрын
You always seem to provide something interesting. Thanks for sharing.
@Jill_Liu7 ай бұрын
really a nice video, wish see more about this topic. it is very useful for our analysts. many thanks.
@anthonygeo37 ай бұрын
Thanks for keeping us up to date and doing so in such a clear and realistically used way
@flexyourdata7 ай бұрын
Thank you!
@richardhay6457 ай бұрын
Good.
@JoseAntonioMorato7 ай бұрын
I learned a lot from your video, but I found your solution a bit complicated. I developed a LAMBDA not for just one line, but for the entire data set: =LAMBDA(DataTable, LET(NM,INDEX(DataTable,,1), NT,INDEX(DataTable,,2), RN,INDEX(DataTable,,3), Names,TOCOL(IF(SEQUENCE(1,MAX(NT))<=NT,NM,#N/A),3), Range,TEXTSPLIT(TEXTJOIN(" ",,TOCOL(MAP(NT,TEXTBEFORE(RN,"-"), LAMBDA(a,b,TEXTJOIN(" ",,SEQUENCE(1,a,b)))),3)),," ",1), Result,VSTACK({"Name","Ticket Number"},HSTACK(Names,Range)),Result))(B9:D14) 🤗
@flexyourdata7 ай бұрын
Great solution! The technique in the video was trying to create something reusable for other problems of the same type. There is also a follow-up video which extends on this. Thanks for sharing your formula.
@Fxingenieria3 ай бұрын
@JoseAntonioMorato / José, parabéns, encontrei mais uma proposta sua para um problema complexo, uma solução espetacular que você deu.
@cedarblossom44967 ай бұрын
would u mind gv us the regular expression script?
@cedjulemckeever7 ай бұрын
I don't know if tried this or not but here is a response from ChatGPT4. Without seeing the entire code and the environment in which it's running, I can't give a definitive answer, but I can suggest some common issues that might prevent the documentation popup from appearing when a function is called: Function not loaded properly: If the function is not loaded into the Power Query environment properly, the documentation will not trigger. Syntax errors: There may be a syntax error somewhere in the documentation metadata that's preventing the popup from working correctly. Power Query Version: Ensure that you are using a version of Power Query that supports function documentation popups. Older versions may not have this feature. Incomplete documentation metadata: All required metadata fields must be properly filled out. Missing information might prevent the popup from appearing. Incorrect function call: If the function is not being called correctly, the popup won't appear. Ensure that you are using the correct syntax to invoke the function. Context of use: Some Power Query interfaces might not support popups, or there might be settings that disable popups. Environment issues: There could be an issue with the specific Power BI or Excel environment you're working in, including disabled features or restrictions. Here are a few troubleshooting steps you can take: Double-check the syntax and completeness of your documentation metadata. Try calling the function in a new Power Query window to see if the issue persists. Check for any updates to Power Query or the host application (Excel or Power BI) and apply them. Look for any environment-specific settings that might be affecting the display of popups. If you can provide more context or additional code, I might be able to offer more targeted suggestions. I am really not qualified to ask the proper prompts here, but maybe something in here you can make sense of. Good Luck with it.
@debabratachakraborty8477 ай бұрын
How can I use in office 2016
@piergeraci7 ай бұрын
Is it available already?
@flexyourdata7 ай бұрын
This is currently only available on the Insiders Beta channel.
@user-eu9uf3sz8h8 ай бұрын
Any chance you can show us how to extend this to do =BYCOL() ? I've got a table of numbers, and would like to do rolling calculations for each column (using a single range array of course).
@itseorab8 ай бұрын
당신이 제시하는 솔루션들은 다른 어떤 영상들보다도 앞서있습니다. 인사이트를 주셔서 감사합니다. 한국의 구독자로부터
@CraigHatmakerBXL8 ай бұрын
That would make a nice 5G function 😃
@Softwaretrain8 ай бұрын
Really informative. Thanks for sharing, I was thinking of another scenario in which we don't miss attributes but they are not in the same position. based on your amazing explanation this came to my mind for this scenario: = LAMBDA(attribute,value, LET( unique_attributes, UNIQUE(attribute), attribute_ids, SEQUENCE(ROWS(unique_attributes)), col_id, XLOOKUP(attribute, unique_attributes, attribute_ids), row_id, MAP(attribute, LAMBDA(a, COUNTIF(TAKE(attribute, 1):a, a))), pivoted, PIVOTBY(row_id, HSTACK(col_id, attribute), value, SINGLE,0,0,,0), DROP(pivoted, 1, 1) ) )
@jerrydellasala76438 ай бұрын
Great stuff, but REALLY needs sample download, even with just the starting data.
@flexyourdata8 ай бұрын
Thanks, I'll need to find some time to make the files in a state fit for consumption.
@yuyuhuang19678 ай бұрын
Great Video!!! I really enjoyed your lecture and acquired some skills from your course. Could you please always provide the raw data for your followers to practice.? If so, you will be extremely popular on the KZbin then.
@flexyourdata8 ай бұрын
Noted, thank you. I will work on making the files available.
@dimknaf8 ай бұрын
I receive connection errors when I am trying to connect to localhost with Flowise or Local LLM APIs. In Python it's ok, but with excel it's not. Any thoughts?
@flexyourdata8 ай бұрын
Python in Excel is not connected to the Internet and cannot access local or network files. It's limited to the data you give it via the Excel spreadaheet or Power Query. So your best bet is to connect to your data source with Power Query and then feed the query into the xl method in the Python cell
@dimknaf8 ай бұрын
@@flexyourdata It would be great to do a video like this one. An example? Basically, I want to work with LLM calls like they are functions. I did this with a macro (chatgpt) wrote the code. Works well, but the excel freezes. This is why I want to use PYthon. However I don't know how to make it work this way. So flexibly I can use like a normal Excel function.
@kimengelmajer81048 ай бұрын
This is terrific, I had no idea you could return a lambda in a lambda! This opens up so many possibilities. Thanks. As a minor quibble, I find the index syntax function( index( x, b - window +1, 1) : index( x, b, 1) a little offputing, and I think it would not work if the input was a generated array instead of a range, so I found an alternative: function( take( drop(x, b-window), window)) which works even if x is not a range Anyway, the concept is great and the explanation fantastic, thanks again
@flexyourdata8 ай бұрын
Glad you liked the video! You're absolutely right - TAKE/DROP is a more flexible approach. Thanks!
@flexyourdata8 ай бұрын
I've added the TAKE/DROP version to the gist, linked in the description. 👍
@CraigHatmakerBXL8 ай бұрын
@@flexyourdata Curried LAMBDA😃. You are so far ahead of me. Alternative CHOOSEROWS() ? Aggregateλ = LAMBDA( ValuesArray, WindowSize, LAMBDA( Function, MAP( SEQUENCE( ROWS( ValuesArray)), LAMBDA( Counter, IF( Counter <= WindowSize, NA(), Function(CHOOSEROWS( ValuesArray, SEQUENCE( WindowSize, ,Counter - Windowsize))) ) ) ) ) );
@flexyourdata8 ай бұрын
@@CraigHatmakerBXL Nice idea with SEQUENCE+CHOOSEROWS. I wonder if there's much difference in performance vs TAKE/DROP. If only there were a robust way to benchmark them.
@HocExcelOnline8 ай бұрын
This looks very interesting. I import your gist, instead of result I got #N/A for the first 4 rows and after that only #NAME? when passing SUM to the function and inside Excel Labs I got SUM red-colored with "Unknown identifier" The formula is: =rolling.aggregate(B2:B16,5)(SUM)
@flexyourdata8 ай бұрын
This should work providing you are on the Insiders Beta channel and you were included on the recent rollout of GROUPBY and PIVOTBY. If you don't have those functions, then passing native functions like this won't work yet. The workaround for now is to pass the aggregate as a lambda: LAMBDA(x, SUM( x ) )
@HocExcelOnline8 ай бұрын
@@flexyourdata well, I do have pivotby and groupby functions available. I may try the update from beta channel then, thank you <3
@flexyourdata8 ай бұрын
@@HocExcelOnline Hm, interesting. If you have GROUPBY and PIVOTBY, it should work, because the update to use native functions as arguments was included in that release. Just checking, but did you import the gist to a new module called rolling? Also, are you using a locale for Excel where the English SUM function is also named SUM?
@HocExcelOnline8 ай бұрын
@@flexyourdata Yes, I did import the gist to a new module, and I named the new module "rolling". The locale of my Excel is standard US with the SUM function is SUM. I am now seeing Beta Channel, Version 2401 Build 16.0.17231.20008
@flexyourdata8 ай бұрын
@@HocExcelOnline That's the same version as me. I created a new workbook, used RANDARRAY to create some fake data, imported from the gist, and used the formula. It's not showing any problems.
@cedjulemckeever8 ай бұрын
Nice work.
@flexyourdata8 ай бұрын
Thanks! I appreciate it 🙏
@anthonygeo38 ай бұрын
I watch these in preparation for my work laptop to get the update in 2034 😄