Cristian Tibrea Posted July 11 Share Posted July 11 Hello Community, I would like to create a Stand ID every time the block height is changing to a new Height (starts again). For example it starts at 100ft and goes down to 0ft (this is a stand). Then it goes up again and comes down to 0ft. How can I identify this transition to identify the stand? There are multiple wells, I created a column [Col1b] to identify the well name change, but now we want to identify the stand nr every time the block height starts again. I attached the .dxp file for your convenience. Any help is much appreciated Test.dxp Link to comment Share on other sites More sharing options...
Anthony Alvarez Posted July 11 Share Posted July 11 (edited) Here are some ideas- Calculate: [Previous Block Height (feet)] - [Block Height (feet)] and call it [Delta Block Height (feet)] I noticed that not all the block height patterns went to zero. Some do (even to negative numbers), but I think there are too many cases that stop at or around 30 something and they never reach zero. You can build a way to auto increment the block ID for the zero cases and the non zero cases. If you monitor the delta bock height column you can check for a delta of -5 (you could use a smaller number too like -20 or -50) should pick up a big change in the current row vs previous row. Create a [Start New Block] column that looks for deltas less than -5 (see the green row) You can create a counter over all time for a well that will increment each time a [Start New Block] is true Example of an auto incrementing block id: The spotfire version of the dxp I attached is 14.4.0.48. You may not be able to open it, so here are the equations I made: Column name: Rank_Date_Origin, Expression: DenseRank([DateTime],[Origin of data]) Column name: Previous Block Height (feet), Expression: First([Block Height (feet)]) OVER (Intersect([Origin of data],Previous([Rank_Date_Origin]))) Column name: Delta Block Height (feet), Expression: [Previous Block Height (feet)] - [Block Height (feet)] Column name: Start New Block, Expression: If([Delta Block Height (feet)]<=-5,True,False) Column name: New Block Count or ID, Expression: Sum(if([Start New Block]=True,1,0)) OVER (Intersect([Origin of data],AllPrevious([Rank_Date_Origin]))) Test.dxp Edited July 11 by Anthony Alvarez Link to comment Share on other sites More sharing options...
Cristian Tibrea Posted July 16 Author Share Posted July 16 Hi Anthony, thank you for your reply, but your approach doesn't work yet. The stands should be aligned horizontally (attached screenshot) not as cumulative numbers. The top visual is what the result should look like, with each (almost) vertical line representing a stand with same ID. Your approach is close, maybe take a look and adjust if possible. Thank you Link to comment Share on other sites More sharing options...
Cristian Tibrea Posted July 16 Author Share Posted July 16 and maybe if possible, to adjust that all stands are aligned instead of shifted (if possible) Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now