# How to get the values of a column according to multiple conditions of another column?

**URL:** <https://discourse.julialang.org/t/how-to-get-the-values-of-a-column-according-to-multiple-conditions-of-another-column/67052>\
**Category:** General Usage\
**Tags:** dataframes\
**Created:** [August 26, 2021, 4:55pm UTC](https://discourse.julialang.org/t/how-to-get-the-values-of-a-column-according-to-multiple-conditions-of-another-column/67052 "2021-08-26T16:55:32Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![Sebastian\_Mena](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/sebastian_mena/32/22819_2.png) [@Sebastian\_Mena](https://discourse.julialang.org/u/Sebastian_Mena)\
**Post date:** [August 26, 2021, 4:55pm UTC](https://discourse.julialang.org/t/how-to-get-the-values-of-a-column-according-to-multiple-conditions-of-another-column/67052/1 "2021-08-26T16:55:32Z")

</div>

I would like to get values from a column according to multiple conditions of another column.  
Here is an example of what i would like to do:

```julia
list_of_values = df[df[:column1] .== (value1 OR value2),:].column2

```

I know that for a condition it works like this:

```julia
list_of_values = df[df[:column1] .== value1,:].column2

```

I hope you can help me.

---

<div class="post-metadata">

**Author:** ![jeffreyesun](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/jeffreyesun/32/13379_2.png) [@jeffreyesun](https://discourse.julialang.org/u/jeffreyesun)\
**Post date:** [August 26, 2021, 5:10pm UTC](https://discourse.julialang.org/t/how-to-get-the-values-of-a-column-according-to-multiple-conditions-of-another-column/67052/2 "2021-08-26T17:10:19Z")

</div>

Try

```julia
list_of_values = df[in.(df[:column1], Ref([value1, value2]),:].column2

```

---

<div class="post-metadata">

**Author:** ![pdeffebach](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/pdeffebach/32/10320_2.png) [@pdeffebach](https://discourse.julialang.org/u/pdeffebach)\
**Post date:** [August 26, 2021, 8:14pm UTC](https://discourse.julialang.org/t/how-to-get-the-values-of-a-column-according-to-multiple-conditions-of-another-column/67052/3 "2021-08-26T20:14:14Z")

</div>

Note, if `df[:column]` works for you, you are probably using a very old version of DataFrames. This could cause problems in other areas.

---

<div class="post-metadata">

**Author:** ![Derek\_Vetsch](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/derek_vetsch/32/8552_2.png) [@Derek\_Vetsch](https://discourse.julialang.org/u/Derek_Vetsch)\
**Post date:** [August 26, 2021, 8:28pm UTC](https://discourse.julialang.org/t/how-to-get-the-values-of-a-column-according-to-multiple-conditions-of-another-column/67052/4 "2021-08-26T20:28:05Z")

</div>

Are you required to get the subset by using brackets? This use case seems like good reason to use `filter`. You could do something like

```julia
filter(:column1 => (c1 -> c1 == value1 || c1 == value2), df).column2

```

---

<div class="post-metadata">

**Author:** ![rafael.guerra](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/rafael.guerra/32/216610_2.png) [@rafael.guerra](https://discourse.julialang.org/u/rafael.guerra)\
**Post date:** [August 27, 2021, 12:33am UTC](https://discourse.julialang.org/t/how-to-get-the-values-of-a-column-according-to-multiple-conditions-of-another-column/67052/5 "2021-08-27T00:33:26Z")

</div>

`df[df[:,:col1] .∈ Ref([val1,val2]),:].col2` , seems a bit closer match to the syntax in your question.

For example:

```julia
using DataFrames
df = DataFrame((x=rand(1:10,10),y=rand("hello",10)))
df[df[:,:x] .∈ Ref([7,9]),:].y

```

---

<div class="post-metadata">

**Author:** ![nilshg](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/nilshg/32/2283_2.png) [@nilshg](https://discourse.julialang.org/u/nilshg)\
**Post date:** [August 27, 2021, 8:18am UTC](https://discourse.julialang.org/t/how-to-get-the-values-of-a-column-according-to-multiple-conditions-of-another-column/67052/6 "2021-08-27T08:18:14Z")

</div>

I’d write

```julia
df[in([value1, value2]).(df.column1), :column2]

```
