удалить запятую из списка строк csv

#python #csv #file #comma

Вопрос:

Моя строка csv-файла — введите описание изображения здесь

Мой код-

 with open("G:/Downloads/whatever - Sheet1 (1).csv", 'r') as read_obj:
    csv_reader = reader(read_obj)
    header = next(csv_reader)
    # Check file as empty
    if header != None:
        # Iterate over each row after the header in the csv
        for row in csv_reader:
            # row variable is a list that represents a row in csv
            row = row.replace(",", "")
            docs = list(nlp.pipe(row))
 

Я получаю ошибку AttributeError: объект «список» не имеет атрибута «заменить».
Как мне ее решить? В основном я хочу удалить все запятые из csv-файла.

Комментарии:

1. Какой смысл иметь файл, разделенный запятыми , без запятых?

Ответ №1:

Если я правильно понимаю, вы хотите получить выходные данные вашего csv без запятых, здесь ваша переменная строки не содержит запятых, а вместо этого содержит данные в списке, как в:

 [item1, item2, item3]
 

если вы хотите преобразовать это в строку, вам нужно сделать что-то вроде:

 output = ''.join(row)
 

чтобы заменить ваш

 row = row.replace(",","")
 

Если я неправильно понял ваш вопрос, пожалуйста, дайте мне знать.

Ответ №2:

Строка представляет собой список значений столбцов для этой конкретной строки. Вам не нужно заменять запятые, вместо этого прочитайте значения в списке и объединитесь, чтобы создать одну строку и передать ее в nlp.

 with open("G:/Downloads/whatever - Sheet1 (1).csv", 'r') as read_obj:
    csv_reader = csv.reader(read_obj)
    header = next(csv_reader)
    # Check file as empty
    if header != None:
        # Iterate over each row after the header in the csv
        for row in csv_reader:
            # row variable is a list that represents a row in csv
            # concatenate the string to a single string
            concatenated_value = ''.join(row)
            
            docs = list(nlp.pipe(concatenated_value))