Problem
I have a table made of 380 rows and 20 columns. I want to remove rows from this table following a certain condition.
To clarify things, let's say I have the list:
names = ['John', 'Amy', 'Daniel']
I want to remove the data of all the people whose name is found in the list names.
Example, let's say my data looks something like this:
John    82    3.12    boy
Katy    12    1.12    girl
Amy     42    2.45    girl
Robert  32    1.56    boy
Daniel  47    2.10    boy
I want to remove the data of John, Amy, and Daniel. So the output should be:
Katy    12    1.12    girl
Robert  32    1.56    boy
Attempt to solve it
import csv
import numpy as np
# loading data
data = np.genfromtxt('file.txt', dtype = None)
csvfile = "home/paula/Desktop/test.txt"
with open(csvfile, 'w') as output:
    writer = csv.writer(output, delimiter = '\t')
    for row in range(len(data)):
        if data[row][0] == (i for i in names):
            print 'removing the data of', i, '...'
        else:
            writer.writerow([data[row][0], data[row][1], 
                             data[row][2], data[row][3]])
My code is working, however the data was not deleted from my original data. When I open the new test.txt file, I can see that the data was not deleted.
I am certain that the bug is in if data[row][0] == (i for i in names):
How can I fix this?
 
     
     
     
    