Pandas 应用于复制完整多索引的组
我有以下问题-计算的输出为我提供了两个原子序数字段:Pandas 应用于复制完整多索引的组,pandas,Pandas,我有以下问题-计算的输出为我提供了两个原子序数字段: In [7]: partition_functions Out[7]: atomic_number ion_number 14 0 11.291802 1 5.866805 2 1.004422 3 2.000202 26
In [7]: partition_functions
Out[7]:
atomic_number ion_number
14 0 11.291802
1 5.866805
2 1.004422
3 2.000202
26 0 59.650557
1 66.895978
2 28.186253
3 6.569105
In [8]: def group_func(group):
return group[1:]/group[:-1].values
...:
In [9]: partition_functions.groupby(level='atomic_number').apply(group_func)
Out[9]:
atomic_number atomic_number ion_number
14 14 1 0.519563
2 0.171204
3 1.991397
26 26 1 1.121464
2 0.421345
3 0.233061
我尝试了几件事——包括制作一个新系列,但都没有成功
提前感谢您的帮助如何:
def group_func(group):
return (group / group.shift(1))
partition_functions.groupby(level='atomic_number').apply(group_func).dropna()
其结果是:
values
atomic_number ion_number
14 1 0.519563
2 0.171204
3 1.991396
26 1 1.121464
2 0.421345
3 0.233061
嗨,拉格,谢谢你的回答!这是一个解决办法——我现在正在做的是通过创建一个新的索引来删除一个atom_数。我想知道:为什么会这样?当我返回group而不是group[1:]/group[:-1]时,它起作用了(不做任何事情,但起作用了),我一定是瞎了。我看不出有问题吗?