Необходимо удалить весь столбец в 2-м списке с помощью функции регулярного выражения python - PullRequest
0 голосов
/ 16 июня 2020

Итак, у меня есть файл 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, потому что я, очевидно, не понимая их, а мне нужно. Я учусь в первом семестре школы.

Спасибо

...