numpy array of zeros or empty
It is better to create array of zeros and fill it using if-else. Even conditions makes slow your code, reshaping empty array or concatenating it with new vectors each iteration of loop is more slower operation, because each time new array of new size is created and old array is copied there together with new vector value by value.
I am writing code and efficiency is very important.
Actually I need 2d array, that I am filling with 0 and 1 in for loop. What is better and why?

Make empty array and fill it with "0" and "1". It's pseudocode, my array will be much bigger.
Make array filled by zeros and make if() and if not zero - put one.

So I need information what is more efficiency:
1. Put every element "0" and "1" to empty array 
or
2. Make if() (efficiency of 'if') and then put only "1" element.