我的df如下:
Index Country Val1 Val2 ... Val10
1 Australia 1 3 ... 5
2 Bambua 12 33 ... 56
3 Tambua 14 34 ... 58
我想从每个国家的Val1中减去Val10,所以输出看起来像:
Country Val10-Val1
Australia 4
Bambua 23
Tambua 24
到目前为止我有:
def myDelta(row):
data = row[['Val10', 'Val1']]
return pd.Series({'Delta': np.subtract(data)})
def runDeltas():
myDF = getDF() \
.apply(myDelta, axis=1) \
.sort_values(by=['Delta'], ascending=False)
return myDF
runDeltas导致此错误:
ValueError: ('invalid number of arguments', u'occurred at index 9')
解决这个问题的正确方法是什么?
使用此作为df:
您还可以做减法运算,并将其放入一个新列中,如下所示。
给定以下数据帧:
它归结为一个简单的broadcasting operation:
您还可以使用pandas.DataFrame.assign函数:例如
分配的最佳部分是您可以添加任意数量的分配。e、 g.得到两者的区别,然后记录下来
结果:
相关问题 更多 >
编程相关推荐