Pandas系列为变量

时间:2017-09-06 02:03:50

标签: python python-3.x pandas numpy series

我有从每个pandas系列中选择的pandas系列和索引数组。

这是玩具数据。

index = np.array([0,1,0])
row = pd.Series([np.array([1,2,3]),np.array([2,3,4]),np.array([3,4,5])])

我希望从玩具数据上方处理数据,如下所示。

[row.iloc[0][0:0+2],
 row.iloc[1][1:1+2], 
 row.iloc[2][0:0+2]]

[array([1, 2]), array([3, 4]), array([3, 4])]

我尝试使用像

这样的应用功能
row.apply(lambda x, index: x[index:index+2])

但是,它不起作用。

有没有一种有效的方法来处理它?<​​/ p>

我有大量数据,所以我需要一种有效的方法。

1 个答案:

答案 0 :(得分:0)

您可以将zip与简单列表理解结合使用;

[r[i:i+2] for i, r in zip(index, row)]
Out[127]:
[[1, 2], [3, 4], [3, 4]]