you might want to take a look at
DynamicOutputs, this fan-out pattern you're trying to do is exactly what it's for. that being said, you might find that running an op for every row in a dataframe might end up being very inefficient, depending on the number of rows. the overhead for launching an op is pretty large, so you're usually better off applying functions to dataframes using something like a
map
operation.