2014-02-16 9 views
0

У меня есть две колонки, такие как это:значения столбцов экстракта на основе другого столбца

ветер люфта

да нет

нет да

нет нет

да

Если значение в столбце wind равно yes, я хочу извлечь соответствующие значения в столбце play, независимо от того, является ли значение в этом столбце yes или no.

Я написал этот цикл for, чтобы сделать это, но я не уверен, что это правильный способ сделать такую ​​операцию? tar_attr_labels - столбец play.

for val in labelFreq.keys():   # dict contains yes and no 

    dataSubset = [entry for entry in tar_attr_labels if val] 
    ..... 
+0

'column' не тип объекта Python. Как выглядит ваша структура данных? У вас есть список списков? Два словаря? И т. Д. – DSM

+0

... или файл, который вы читаете? –

+0

Можете ли вы напечатать 'labelFreq'? Или вывод 'labelFreq.items() [: 5]'? – colcarroll

ответ

1

Я считаю, что ваша labelFreq переменным имеет словарь с вашим wind столбца как ключ и play столбца в качестве значения.

Если это правда, то, что вы хотите сделать:

data_subset = {wind: play for wind, play in labelFreq.items() if wind == 'yes'} 
+0

Не совсем, нет. 'labelFreq' просто содержит количество слов' yes' и 'no' в столбце' wind'. Исходя из того, является ли 'wind'' yes' (или нет), я хочу извлечь соответствующие значения из 'play', независимо от того,' '' '' '' '' '' '' '' '' '' '' ' – Eagle

+0

Вы можете создать словарь так, как я предложил , просто применяя 'dict()' к вашим данным, вместо 'zip()'. – iurisilvio

+0

Синтаксис для понимания dict использует '{}' not '[]'. –

Смежные вопросы