В этом конкретном случае вы могли бы сделать df.a.values[0]
, но если бы это был виртуальный столбец, это привело бы к оценке всего столбца. Что было бы быстрее сделать (скажем, в случае> 1 биллона строк и виртуального столбца), это сделать:
df['r'] = df.a + df.b
df.evaluate('r', i1=2, i2=3)[0]
Это оценит виртуальный столбец / выражение r
, от строки 2 до 3 (массив длины 1), и получит первый элемент.
Это довольно неуклюже, и по этому вопросу открыта следующая проблема: https://github.com/vaexio/vaex/issues/238
Может быть, вы удивлены тем, что vaex не имеет чего-то столь же «базового», как это, но vaex часто используется для действительно больших наборов данных, где вы не часто получаете доступ к отдельным строкам, поэтому мы не сталкиваемся с этим. много.