Those csv files will be too much to store if you want a line for each cycle.
There will likely be millions if not billions of such cycles. The question is
what will you do with those csv files? Presumably you are going to average
the values across a column, or sum them, etc. If that is your plan, then
shift your thinking of the csv file as the storage of your cycles to thinking of the
NetworkX graph as the storage of your cycle information. Take the averages
and sums, etc as you iterate over the cycles, instead of creating the csv with
one row per cycle. So, one pass through might compute the number of cycles
for each unit interval of time. Another pass might be the total
(WeightO_IN * length of time) as well as the (weightINS * length of time).