2016-01-11 2 views
0

У меня есть файл csv, который выглядит примерно так.Сравнение и удаление строк CSV-файла в python?

"title","keep","get_rid","keep","rubbish" 
"hello_world",1,0,0,0 
"goodbye_world",0,0,1,0 
"to_string",1,0,1,0 
"not_so_smart",1,0,0,0 

Цель состоит в том, чтобы удалить столбцы которых не содержат экземпляр 1. Таким образом, в этом примере, «Get-избавились» и «мусор», будут удалены - оставляя нас с чем-то вроде ...

"title","keep", "keep" 
"hello_world",1,0 
"goodbye_world",0,1 
"to_string",1,1 
"not_so_smart",1,0 

Однако я как-то изо всех сил пытался выполнить то, что казалось изначально простой проблемой.

Моя удалось решение в настоящее время выглядит следующим образом ...

with open("filename.csv", "rb") as file: 
reader = csv.reader(file) 
header = next(reader) 
for i, columns in enumerate(reader): 
    for j, rows in enumerate(columns): 
     if "1" not in rows[1:]: 

, который не работает, как ожидалось. Может кто-то указать мне верное направление?

ответ

1

1 должно быть str тип, но не int тип.

if '1' not in columns