微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

python – 相当于熊猫的numpy

我有以下numpy数组:

x = np.arange(9.).reshape(3, 3)

从而:

>>>> x
array([[ 0.,  1.,  2.],
       [ 3.,  4.,  5.],
       [ 6.,  7.,  8.]])

我想选择第三列大于2的所有行.

在熊猫中,我会这样做:

import pandas as pd
d = DataFrame(x)

>>>> d[d.iloc[:,2]>2]

输出将是:

   0  1  2
1  3  4  5
2  6  7  8

如何使用numpy获得相同的输出?我尝试了numpy,但它返回索引,而不是值.
谢谢!

解决方法:

In [120]:
x[x[: , 2] > 2]
Out[120]:
array([[ 3.,  4.,  5.],
       [ 6.,  7.,  8.]])

分解

In [122]:
mask = x[: , 2] > 2
mask
Out[122]:
array([False,  True,  True], dtype=bool)

In [123]:
x[mask]
Out[123]:
array([[ 3.,  4.,  5.],
       [ 6.,  7.,  8.]])

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐