Итак, у меня есть файл CSV, в котором есть 2 столбца для «Пол». Второй столбец не нужен. У меня есть , чтобы использовать функцию регулярного выражения для удаления столбца 2nd Gender.
Это мой код:
import csv
import re
data = []
with open('customerData.csv') as csvfile:
reader = csv.reader(csvfile, delimiter=',')
for row in reader:
data.append(row)
print(data[0])
for i in range(len(data),):
if re.match("Gender", data[i][11]):
del data[i][11]
print(data[0])
print(data[1])
output:
['Name', 'Gender', 'SSN', 'Member Date', 'Phone', 'State', 'Zip', 'Email', 'Credit Card', 'Credit Card_Number', 'Credit Card Exp', 'Gender', 'Favorite Radio Station', 'Purchases Past 30 Days', 'Spent Past 30 Days', 'Purchases Past 6 Months', 'Spent Past 6 Months', 'Purchases Past 12 Months', 'Spent Past 12 Months']
['Name', 'Gender', 'SSN', 'Member Date', 'Phone', 'State', 'Zip', 'Email', 'Credit Card', 'Credit Card_Number', 'Credit Card Exp', 'Favorite Radio Station', 'Purchases Past 30 Days', 'Spent Past 30 Days', 'Purchases Past 6 Months', 'Spent Past 6 Months', 'Purchases Past 12 Months', 'Spent Past 12 Months']
['Mamie Mason', 'female', '459-69-6647', 'Mon Aug 01 2016 12:06:01 GMT-0400 (Eastern Daylight Time)', '9472284457', 'Indiana', '82439-3619', 'm.masonason@gig.org', 'Visa', '4263xxxxxxxx1913', '09/23', 'female', 'WMMZ', '4', '$2149.81', '7', '$5188.75', '9', '$10756.500000000002']
Я не могу понять, почему я удаляю столбец 11 только в первой строке. (строка 0), а не для каждой строки.
Я понял, что могу использовать:
if re.match("Gender", data[0][11]):
[j.pop(11) for j in data]
Но я пытаюсь сделать это в for l oop, потому что я, очевидно, не понимая их, а мне нужно. Я учусь в первом семестре школы.
Спасибо