Creating new columns that contain the value of a specific index

I have tried multiple methods that get me to a point close to but not exactly where I want to be with the final output. I am trying to first create a few columns that contain a specific within the raw dataframe based on it’s position, afterwards I am trying to make a particular row the header row and skip all the rows that were above it.

NumPy array row differences

I have a NumPy array vectors = np.random.randn(rows, cols). I want to find differences between its rows according to some other array diffs which is sparse and “2-hot”: containing a 1 in its column corresponding to the first row of vectors and a -1 corresponding to the second row. Perhaps an example shall make it clearer:

creating multiple columns in a for loop python

I’m new to Python.
I’m trying to create multiple columns in a for loop but I’m having trouble with it.
I have several columns and I’m trying to create a new column that shows whether or not the elements in ohlcs is greater than elements in metrics. I can do it to create one column but I want to save time since I plan on doing the same function but for different variables.