0
我有一个pandas系列和一个函数,它接受一系列值并返回一个数据帧。有没有办法将函数应用到系列中,并以自然的方式整理结果?将pandas series/dataframe中的每个值映射到n> 1个维度
我真正想要做的就是使用pandas series/multiindex跟踪数据分析流水线中每个步骤的结果,其中multiindex保存用于获取值的参数。例如,该系列(如下所示)是我的数据分析管道中步骤0的结果。在第1步中,我想尝试更多尺寸(下面的2个,因此是数据框),并将结果整理到另一个系列中。
我们可以做得比下面更好吗?其中stack()
调用似乎有点过分。 xarray库会不会适合我的用例?
In [112]: s
Out[112]:
a 0
b 1
c 2
dtype: int64
In [113]: d = s.apply(lambda x: pd.DataFrame([[x,x*2],[x*3,x*4]]).stack()).stack().stack()
In [114]: d
Out[114]:
a 0 0 0
1 0
1 0 0
1 0
b 0 0 1
1 3
1 0 2
1 4
c 0 0 2
1 6
1 0 4
1 8
dtype: int64