how to read this two symbols

https://learninghub.kx.com/forums/topic/how-to-read-this-two-symbols

suppose i have a table with filed1 is list of symbol 1m3m and filed2 is source bbgbbg

 

then how should i read

 

1. #[;1b] each count each field2 from table

2. {x 1 0} each filed1 from table
  1. count each field2 implies each item of field2 is a list its length to be counted
  2. Similarly, the lambda {x 1 0} specifies the second and first items of a list, implying field1 is also nested
 
q)show t:([]field1:(2+5?3)?:`$string[til 10],'"m";field2:(1+5?5)?:5?`3) 
field1 field2 
------------------------------ 
`9m`1m `dmp`gce`gdp 
`4m`3m`9m `gce`dmp`dmp`nmo`gdp 
`8m`9m ,`icg 
`9m`5m`4m `icg`gce`nmo`nmo`gce 
`0m`4m`3m `dmp`icg`icg`gce 
q)select {x 1 0}each field1, #[;1b] each count each field2 from t 
field1 field2 
------------- 
1m 9m 111b 
3m 4m 11111b 
9m 8m ,1b 
5m 9m 11111b 
4m 0m 1111b
 

Above:

  1. the second and first items from each list in field1
  2. a boolean true for each symbol in the field2 lists
Alternative expression:

 

q)select reverse each 2#'field1, not null field2 from t 
field1 field2 
------------- 
1m 9m 111b 
3m 4m 11111b 
9m 8m ,1b 
5m 9m 11111b 
4m 0m 1111b

 

thanks for the reply what does #[;1b] mean

It is a projection on take

q)1#1b ,1b 
q)2#1b 11b 
q)#[;1b] 1 ,1b 
q)#[;1b] 2 11b