2015-05-25 3 views
-1

У меня есть dataframe, который имеет переменные с именами, как это:Как перебрать выбранные столбцы в python pandas.

exp1 exp2 exp3 
    10 20 56 

У меня есть функция, которая принимает exp1 в качестве аргумента и создать переменную с именем rate1. Теперь я хотел бы изменить функцию на цикл через exp1, 2, 3 и т. Д. И создать rate1, 2, 3 и т. Д. Я новичок в python. Каков правильный способ выполнения этой простой задачи.

+0

Обычно, чтобы получить лучшее из панд, вы должны избегать петель и попытаться «Vectorize» свои операции/функции, если вы можете. Трудно дать хороший ответ на этот вопрос, поскольку он очень сильно зависит от функции. Если вы дадите эту функцию, это поможет. Кроме того, ваш примерный фреймворк не очень описателен, поскольку он имеет только одну строку и может быть описан с помощью серии pandas. Я не проголосовал за вас, хотя :) – JoeCondron

+0

Я отредактирую позже –

ответ

0

Это должно работать, просто изменить FUNCTION вашей функции

rates = [] 
for column in df: 
    # if your function deal with columns as dataframe 
    rate = FUNCTION(df[column]) 
    rates.append(rate) 

    # if your function deal with columns as lists 
    rate = FUNCTION(df[column].values) 
    rates.append(rate) 

    # if your dataframes contain one value (row) and your function deal with this values as floats 
    rate = FUNCTION(float(df[column].values)) 
    rates.append(rate) 
print rates 
+1

Downvoter, не могли бы вы обосновать свое нижестоящее? спасибо – farhawa

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