Не могу заставить мой скрипт записать вывод в 2 разных CSV в зависимости от случая - PullRequest
0 голосов
/ 23 марта 2020

У меня есть CSV с более чем 2M строк, и некоторые из этих строк имеют пустые ячейки.

Я пытаюсь разработать инструмент, который будет читать каждую из этих строк, и если это была пропущенная ячейка, он проанализирует это в файл CSV. Если оно завершено, нет ячеек с пустыми значениями; он проанализирует его в другом выходном CSV-файле.

Однако мой код, похоже, вообще ничего не делает, и я не могу найти причину проблемы, я не получаю сообщение об ошибке. Надеюсь, кто-нибудь может указать мне правильное направление:

import csv
import time
import re

with open('dataFrame.csv', newline='\n') as csvfile:
    data = csv.reader(csvfile, delimiter=',', quotechar='|')
    lenght=sum(1 for row in data)

    for row in data:
        if ',,' in row:
            with open('/Desktop/Final_Project/model_training/missing_data.csv',"w") as incomplete_data:
                writer=csv.writer(incomplete_data, delimiter=',')
                for i in range(lenght):
                    print(row)
                    writer.writerow(row)
                    i=i+1
        else:

            with open('/Desktop/Final_Project/model_training/complete_data.csv',"w") as complete_data:
                writer=csv.writer(complete_data, delimiter=',')
                for i in range(lenght):
                    print(row)
                    writer.writerow(row)
                    i=i+1

Я пытаюсь go по всем строкам в строке 9. Вот почему я использую для l oop для итерации по CSV file.

Если он находит ",,", то есть en пустая ячейка; с открытым новым CSV-файлом запишите текущую строку в файл и начните подсчет i в диапазоне длины кадра данных.

если условие другое, сделайте то же самое, но в другом файле.

В конце каждого случая увеличивайте i, чтобы отслеживать строку.

Что-нибудь помогает, спасибо всем!

...