在具有预定义函数的 for 循环中使用 dataframe groupby agg
use dataframe groupby agg within a foor loop with predefiend functions
如何执行下面的for循环
operation = ['mean','std']
for i in range(0,len(operation)):
df2 = df.groupby(level='Index').agg(operation[i]).dropna(how='all')
....
但使用 numpy 中的函数
operation = ['np.mean','np.std']
for i in range(0,len(operation)):
df2 = df.groupby(level='Index').agg(operation[i]).dropna(how='all')
....
我特别想用 ddof=1
你能告诉我怎么做吗?
尝试传递实际函数而不是字符串,即:
operation = [np.mean, np.std]
要将参数传递给函数,您可以将 lambda
与函数参数一起传递。例如:
operation = [np.mean, lambda x: np.std(x, ddof=1)]
如何执行下面的for循环
operation = ['mean','std']
for i in range(0,len(operation)):
df2 = df.groupby(level='Index').agg(operation[i]).dropna(how='all')
....
但使用 numpy 中的函数
operation = ['np.mean','np.std']
for i in range(0,len(operation)):
df2 = df.groupby(level='Index').agg(operation[i]).dropna(how='all')
....
我特别想用 ddof=1
你能告诉我怎么做吗?
尝试传递实际函数而不是字符串,即:
operation = [np.mean, np.std]
要将参数传递给函数,您可以将 lambda
与函数参数一起传递。例如:
operation = [np.mean, lambda x: np.std(x, ddof=1)]