【发布时间】:2020-11-06 01:42:10
【问题描述】:
我想使用 x 系列的掩码来过滤掉 vaex 数据帧 y。 我知道如何在 pandas 和 numpy 中做到这一点。在 pandas 中是这样的:
import pandas as pd
a = [0,0,0,1,1,1,0,0,0]
b = [4,5,7,8,9,9,0,6,4]
x = pd.Series(a)
y = pd.Series(b)
print(y[x==1])
结果是这样的:
3 8
4 9
5 9
dtype: int64
但在 vaex 中,下面的代码不起作用。
import vaex
import numpy as np
a = np.array([0, 0, 0, 1, 1, 1, 0, 0, 0])
b = np.array([4, 5, 7, 8, 9, 9, 0, 6, 4])
x = vaex.from_arrays(x=a)
y = vaex.from_arrays(x=b)
print(y[x.x == 1].values)
结果为空:
[]
看来 vaex 没有和 pandas 和 numpy 一样的索引概念。虽然两个数据框的形状相同,但数组 y 不能使用掩码 x.x==1。
有没有什么方法可以达到 pandas 所要求的等效结果?
谢谢
【问题讨论】: