@@ -87,48 +87,6 @@ def get_node_count(g):
8787 logger .debug ('getting node count for graph' )
8888 return len (g .nodes ())
8989
90- @click .command ()
91- @click .argument ('pid' , envvar = 'SEQ_PARENT_UID' )
92- @click .argument ('cid' , envvar = 'SEQ_CHILD_UID' )
93- @click .pass_context
94- def order_blocks (ctx , pid , cid ):
95- """Calculate the block ordering based on the edge sequence."""
96-
97- logger .debug ('order_blocks started' )
98-
99- # sqlalchemy setup
100- meta = MetaData ()
101-
102- # pull the edge sequence out of the database
103- logger .debug ("Reading from edge_sequence table" )
104- edge_table = Table ('edge_sequence' , meta , autoload = True , autoload_with = ctx .obj ['dest_db' ])
105- edge_select = select ([edge_table ])
106- edge_sequence = pd .read_sql (edge_select , con = ctx .obj ['dest_db' ])
107-
108- # calculate the block order
109- logger .debug ("Calculating the block order" )
110- edge_sequence = edge_sequence .groupby (pid , sort = True ).apply (sub_block_order , {'key' :cid })
111-
112- # calculate the edge order within the blocks
113- logger .debug ("Calculating edge order" )
114- edge_sequence ['edge_order' ] = edge_sequence .groupby ([pid , cid ], sort = True ).cumcount ()+ 1
115-
116- # calculate the chain ID
117- logger .debug ("Calculating chain ID field" )
118- edge_sequence ['chain_id' ] = np .where (edge_sequence ['edge_order' ] == 1 , 1 , 0 )
119-
120- output_table_name = 'ordered_sequence'
121- logger .debug ("Saving block order to %s table" , output_table_name )
122- edge_sequence .to_sql (output_table_name , con = ctx .obj ['dest_db' ])
123-
124- logger .debug ('order_blocks ended' )
125-
126- def sub_block_order (data , key = 'lb_uid' ):
127- """Takes a DataFrame grouped by a parent geography and creates an ID number for the order in which they appear."""
128-
129- grp = data .groupby (key )
130- data ['block_order' ] = grp .ngroup ()+ 1
131- return data
13290
13391@click .command ()
13492@click .argument ('pgeo' , envvar = 'SEQ_PARENT_LAYER' )
0 commit comments