#python #pandas #dataframe #for-loop #series
#питон #панды #фрейм данных #для-петли #Серии
Вопрос:
Я хранил переменные, используя цикл for в Python 3.8, который выглядит следующим образом
i = len(df.columns) for n in range (0,i): x = df.iloc[:,n] y = #variable with observed values sl, ic = stats.linregress(x,y) var = ((sl*x) ic) globals()['var_' str(n)] = var #endfor
globals
функция возвращает переменную (ряд), сохраненную с числом в диапазоне от 0
до i
, с этой структурой var_number
.
Я хотел бы сохранить все переменные в фрейме данных… есть ли способ? Нужно ли мне добавлять команду внутри цикла или после?
Комментарии:
1. я бы рекомендовал создать словарь вместо динамически добавляемых переменных, чтобы
globals
2. Является ли значение переменной ‘var’ полученным из df ? Если да, то не будет ли достаточно переименования столбцов df с помощью «var_number»? Нужна дополнительная информация о самой переменной… может быть, воспроизводимый пример ?
3. @PaulH Я немного изменил пост, чтобы, возможно, процедура была более понятной
4.
df
иy
не определены, так что это все еще неясно. но моя точка зрения остается в силе. не добавляйте динамически объекты в пространство имен. создайте единый словарь и добавьте каждое значение с помощью значимого ключа5. Извините, я хотел отметить @MathewPaul, который просил предоставить дополнительную информацию о коде