Hi,
My script creates a randomly selected mixture of items from
sets of data.
I want to count the items to check on the totals:
The sets of data are like this:
$data = '{Adata1|Adata2|Adata3} {Bdata1|Bdata2|Bdata3|Bdata4} {Cdata1|Cdata2} {Ddata1|Ddata2|Ddata3|Ddata4|Ddata5} {Edata1|Edata2|Edata3|Edata4|Edata5|Edata6|Edata7|Edata8|Edata9} {Fdata1|Fdata2|Fdata3|Fdata4|Fdata5|Fdata6} {Gdata1|Gdata2|Gdata3|Gdata4|Gdata5|Gdata6|Gdata7|Gdata8} {Hdata1|Hdata2|Hdata3|Hdata4|Hdata5} {Idata1|Idata2} {Jdata1|Jdata2|Jdata3|Jdata4|Jdata5|Jdata6|Jdata7} {Kdata1|Kdata2|Kdata3|KdataK|Kdata5} ';
The script selects ONE item from each set randomly and then writes "ZZ" then continues.
( some sets have only 2 items, others have 5, 6, 9 etc )
So the resulting file looks like this
Adata3 Bdata4 Cdata1 Ddata1 Edata3 Fdata1 Gdata6 Hdata3 Idata1 Jdata3 KdataK ZZ Adata1 Bdata4 Cdata2 Ddata2 Edata9 Fdata1 Gdata4 Hdata2 Idata2 Jdata2 Kdata5 ZZ Adata1 Bdata3 Cdata2 Ddata1 Edata6 Fdata5 Gdata6 Hdata5 Idata2 Jdata3 KdataK ZZ Adata2 Bdata2 Cdata1 Ddata3 Edata1 Fdata4 Gdata7 Hdata3 Idata1 Jdata1 Kdata2 ZZ Adata1 Bdata2 Cdata1 Ddata2 Edata7 Fdata4 Gdata2 Hdata5 Idata1 Jdata2 Kdata3 ZZ Adata3 Bdata2 Cdata1 Ddata4 Edata9 Fdata6 Gdata6 Hdata2 Idata2 Jdata1 KdataK ZZ Adata3 Bdata3 Cdata2 Ddata3 Edata4 Fdata2 Gdata6 Hdata3 Idata2 Jdata7 KdataK ZZ Adata3 Bdata2 Cdata1 Ddata3 Edata4 Fdata3 Gdata7 Hdata4 Idata2 Jdata6 Kdata5 ZZ Adata3 Bdata2 Cdata2 Ddata5 Edata2 Fdata1 Gdata5 Hdata1 Idata2 Jdata3 KdataK ZZ Adata2 Bdata4 Cdata1 Ddata5 Edata5 Fdata4 Gdata5 Hdata3 Idata1 Jdata3 KdataK ZZ Adata3 Bdata4 Cdata1 Ddata1 Edata7 Fdata5 Gdata8 Hdata3 Idata2 Jdata7 Kdata5 ZZ Adata2 Bdata4 Cdata1 Ddata4 Edata3 Fdata2 Gdata5 Hdata4 Idata2 Jdata2 Kdata3 ZZ Adata1 Bdata1 Cdata2 Ddata4 Edata6 Fdata3 Gdata1 Hdata5 Idata1 Jdata6 Kdata5 ZZ Adata1 Bdata4 Cdata2 Ddata1 Edata9 Fdata6 Gdata7 Hdata5 Idata2 Jdata3 Kdata3 ZZ Adata3 Bdata1 Cdata2 Ddata1 Edata7 Fdata4 Gdata1 Hdata5 Idata1 Jdata2 Kdata5 ZZ Adata1 Bdata4 Cdata2 Ddata3 Edata9 Fdata4 Gdata6 Hdata5 Idata1 Jdata7 KdataK ZZ Adata3 Bdata4 Cdata2 Ddata4 Edata7 Fdata4 Gdata5 Hdata1 Idata1 Jdata4 Kdata2 ZZ Adata1 Bdata2 Cdata1 Ddata4 Edata5 Fdata6 Gdata7 Hdata4 Idata2 Jdata7 KdataK ZZ Adata2 Bdata3 Cdata2 Ddata5 Edata2 Fdata3 Gdata3 Hdata1 Idata1 Jdata2 Kdata1 ZZ Adata3 Bdata4 Cdata2 Ddata3 Edata5 Fdata1 Gdata5 Hdata5 Idata1 Jdata5 Kdata3 ZZ Adata2 Bdata2 Cdata2 Ddata3 Edata2 Fdata5 Gdata4 Hdata1 Idata1 Jdata7 KdataK ZZ Adata3 Bdata4 Cdata2 Ddata2 Edata2 Fdata1 Gdata5 Hdata2 Idata1 Jdata4 Kdata2 ZZ Adata1 Bdata4 Cdata2 Ddata2 Edata6 Fdata5 Gdata6 Hdata2 Idata1 Jdata2 Kdata3 ZZ Adata1 Bdata3 Cdata2 Ddata5 Edata1 Fdata6 Gdata2 Hdata5 Idata2 Jdata1 KdataK ZZ Adata2 Bdata2 Cdata2 Ddata3 Edata1 Fdata2 Gdata6 Hdata3 Idata2 Jdata6 Kdata3 ZZ Adata2 Bdata4 Cdata1 Ddata1 Edata6 Fdata2 Gdata3 Hdata4 Idata2 Jdata4 Kdata2 ZZ Adata2 Bdata2 Cdata1 Ddata3 Edata6 Fdata3 Gdata1 Hdata4 Idata1 Jdata3 Kdata1 ZZ Adata1 Bdata4 Cdata1 Ddata2 Edata5 Fdata5 Gdata8 Hdata2 Idata1 Jdata2 Kdata1 ZZ Adata1 Bdata2 Cdata2 Ddata3 Edata7 Fdata4 Gdata3 Hdata2 Idata2 Jdata7 KdataK ZZ Adata2 Bdata2 Cdata1 Ddata4 Edata4 Fdata1 Gdata8 Hdata4 Idata1 Jdata7 Kdata3 ZZ Adata2 Bdata2 Cdata1 Ddata1 Edata3 Fdata2 Gdata3 Hdata3 Idata1 Jdata4 Kdata5 ZZ Adata1 Bdata4 Cdata2 Ddata5 Edata2 Fdata6 Gdata7 Hdata1 Idata2 Jdata2 Kdata3 ZZ Adata3 Bdata4 Cdata2 Ddata5 Edata8 Fdata4 Gdata2 Hdata5 Idata1 Jdata4 Kdata1 ZZ Adata1 Bdata3 Cdata1 Ddata3 Edata9 Fdata1 Gdata7 Hdata2 Idata1 Jdata1 Kdata2 ZZ
What would you say is the best way to count up all the items and give a table with the totals ?
Can I use the $data set as an array to make it work ?
My results should be like:
Adata1 23
Adata2 20
Adata3 29
Bdata1 15
Bdata2 20
Bdata3 18
Bdata4 22
...
The reason is to check just how well balanced the mix will be if the script creates 1000 combinations
When I know the results on this test data I can run it on more complex data.
Many thanks for your ideas.