Python 如何将函数应用于两列以创建第三列
我有两列,我想通过应用函数使用这两列创建第三列Python 如何将函数应用于两列以创建第三列,python,pandas,Python,Pandas,我有两列,我想通过应用函数使用这两列创建第三列 #假设我有一个由两列组成的数据框 df=标准平均值 1.555264e+06 155980.767761 1.925751e+06 237683.694682 4.027044e+05 46319.631557 #从这两列中,我想创建一个名为cov的列 #这将计算我定义的函数的变异系数 def cov(标准,平均值): 回报率(标准/平均值)*100 df['Cov']=df.应用(λx:Cov(x.Std,x.mean),轴=1) #但这里我面临
#假设我有一个由两列组成的数据框
df=标准平均值
1.555264e+06 155980.767761
1.925751e+06 237683.694682
4.027044e+05 46319.631557
#从这两列中,我想创建一个名为cov的列
#这将计算我定义的函数的变异系数
def cov(标准,平均值):
回报率(标准/平均值)*100
df['Cov']=df.应用(λx:Cov(x.Std,x.mean),轴=1)
#但这里我面临的问题是,它一次计算所有变量,并在每一行中显示相同的值
我试图通过搜索将函数应用于dataframe的两列
但是我从解决方案中得到了错误,例如
(“'numpy.float64'对象没有属性'values',发生在索引1')
您不需要使用应用
,只需使用:
df['Cov'] = (df['std'] / df['mean']) * 100