Форум сайта python.su
58
Ну так проходите сразу по полю. Зачем в метод filter передаете только второй столбец? Передавайте оба, а фильтруйте только первый. И еще. Тут filter не нужен… Тот код, который Вы привели соответствует коду:
data2 = [one for one in data[:, 1] if one > 0]
data = [(1, 2), (-1, 5), (3, 12), (-5, 10)] data_clear = [one_line for one_line in data if one_line[0] > 0]
Офлайн
0
я попробовал вот так
def denoise(rows): for i in rows: if i[1] < 0: del i return rows
Офлайн
58
sshkrv
Вам бы книгу какую-нибудь почитать… Честно. Рано Вы взялись за обработку данных. Сначала желательно разобраться с основами python и синтаксисом.
def denoise(rows): for i in rows: # прохожусь по списку и присваиваю последовательно значения из rows переменной i if i[1] < 0: del i # удаляю i (это никак не скажется на rows !!!) return rows
Отредактировано 4kpt_II (Окт. 15, 2014 16:59:00)
Офлайн