如何获取熊猫数据帧行中的最后五个连续值?

如果我有这样的Pandas Data Frame:


0     1 5 7 3   7 1 9   2 NaN 4 3 NaN 3 2


1     1 3 2 8   4 2 NaN 2 NaN 3 1 0   4 1


2     1 5 1 NaN 7 3 2   1 3   5 0 NaN 2 1


3     1 4 5 3   1 2 NaN 1 3   1 2 NaN 2 1

如何找到每行中的最后五个连续值?如下所示:


3 7 1 9 2


3 1 0 4 1


2 1 3 5 0


4 5 3 1 2


小怪兽爱吃肉
浏览 155回答 1
1回答

慕姐4208626

让我们尝试一下:df.T.apply(lambda x:  x[x.groupby(x.isnull().cumsum()).transform('count')>4].dropna().tail(5).values).T     0    1    2    3    40  3.0  7.0  1.0  9.0  2.01  3.0  1.0  0.0  4.0  1.02  2.0  1.0  3.0  5.0  0.03  4.0  5.0  3.0  1.0  2.0或者df.apply(lambda x: pd.Series(x[x.groupby(x.isnull().cumsum()).transform('count')>4].dropna().tail(5).values), axis=1)输出:     0    1    2    3    40  3.0  7.0  1.0  9.0  2.01  3.0  1.0  0.0  4.0  1.02  2.0  1.0  3.0  5.0  0.03  4.0  5.0  3.0  1.0  2.0
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python