python - 从 Pandas 数据框中获取数组的子集

标签 python python-2.7 numpy pandas

我有一个名为 arr 的 numpy 数组,其中包含 1154 个元素。

array([502, 502, 503, ..., 853, 853, 853], dtype=int64)

我有一个名为 df 的数据框

    team    Count
0   512     11
1   513     21
2   515     18
3   516     8
4   517     4

如何获取仅包含数组 arr 中的值的数据框 df 的子集

例如:

team         count
arr1_value1    45
arr1_value2    67

为了让这个问题更清楚: 我有一个 numpy 数组 ['45', '55', '65']

我有一个数据框如下:

team  count
34      156
45      189
53       90
65       99
23       77
55       91

我需要一个新的数据框如下:

team    count
 45      189
 55       91
 65       99

最佳答案

我不知道这是否是错字,你的数组值看起来像字符串,假设它不是,它们实际上是整数,那么你可以通过调用 isin 来过滤你的 df :

In [6]:

a = np.array([45, 55, 65])
df[df.team.isin(a)]
Out[6]:
   team  count
1    45    189
3    65     99
5    55     91

关于python - 从 Pandas 数据框中获取数组的子集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28936713/

相关文章:

python - QTreeView 小部件默认大小占用最大屏幕空间

python - 使用 python 下载千个文件的最快方法?

带有nans的python numpy加权平均值

python - 保存我多次使用的列表的长度是否更好?

python - 替代 scipy.optimize.curve_fit

python - python 中函数可以返回 numpy 参数吗?

Python:使用for循环创建未知数量的变量

python-2.7 - 如何设置python安装路径?

python-2.7 - 如何使用 Python 2.7 和 Requests 保存 Netscape 风格的 cookies.txt 文件?

python - 如何删除 numpy 数组中的非对称对?