Я пытаюсь написать программу для расчета набора статистических данных на основе набора данных.У меня есть имена статистики, функция для вычисления статистики и место для результатов в кадре данных.Осталось только оценить функцию и поместить результаты в столбец результатов.
Я видел в Python указатели функций, используемые как
def func():
#do a thing
return f
func()
, и я видел применение таких вещей к фрейму данных, как
df['col1'] = 5 + df['col2']
, но сочетая такие понятия, какниже не работает, говоря, что объект серии не вызывается.Я надеюсь, что есть способ сделать это чисто, не перебирая строки.
def a():
#do a thing...
return 'a'
def b():
#do a thing
return 'b'
def c():
#do a thing
return 'c'
df = pd.DataFrame([[a,''],[b,''],[c,'']], columns=['func','result'])
func result
0 <function a at 0x000000001775D3C8>
1 <function b at 0x000000001775D438>
2 <function c at 0x000000001775D4A8>
df['result'] = df['func']()
func result
0 <function a at 0x000000001775D3C8> 'a'
1 <function b at 0x000000001775D438> 'b'
2 <function c at 0x000000001775D4A8> 'c'