Expand Menu
-
Home / Old / Documentation / vDataFrame / Main Methods / Case When / Index
vDataFrame.case_when¶
In [ ]:
vDataFrame.case_when(name: str,
*argv)
Creates a new feature by evaluating the specified conditions.
Parameters¶
| Name | Type | Optional | Description |
|---|---|---|---|
name | str | ❌ | Name of the new feature. |
*argv | object | ❌ | Infinite Number of Expressions. The expression generated will look like:
|
In [4]:
from verticapy.datasets import load_titanic
titanic = load_titanic()
display(titanic)
123 pclassInt | 123 survivedInt | Abc Varchar(164) | Abc sexVarchar(20) | 123 ageNumeric(6,3) | 123 sibspInt | 123 parchInt | Abc ticketVarchar(36) | 123 fareNumeric(10,5) | Abc cabinVarchar(30) | Abc embarkedVarchar(20) | Abc boatVarchar(100) | 123 bodyInt | Abc home.destVarchar(100) | |
| 1 | 1 | 0 | female | 2.0 | 1 | 2 | 113781 | 151.55 | C22 C26 | S | [null] | [null] | Montreal, PQ / Chesterville, ON | |
| 2 | 1 | 0 | male | 30.0 | 1 | 2 | 113781 | 151.55 | C22 C26 | S | [null] | 135 | Montreal, PQ / Chesterville, ON | |
| 3 | 1 | 0 | female | 25.0 | 1 | 2 | 113781 | 151.55 | C22 C26 | S | [null] | [null] | Montreal, PQ / Chesterville, ON | |
| 4 | 1 | 0 | male | 39.0 | 0 | 0 | 112050 | 0.0 | A36 | S | [null] | [null] | Belfast, NI | |
| 5 | 1 | 0 | male | 71.0 | 0 | 0 | PC 17609 | 49.5042 | [null] | C | [null] | 22 | Montevideo, Uruguay | |
| 6 | 1 | 0 | male | 47.0 | 1 | 0 | PC 17757 | 227.525 | C62 C64 | C | [null] | 124 | New York, NY | |
| 7 | 1 | 0 | male | [null] | 0 | 0 | PC 17318 | 25.925 | [null] | S | [null] | [null] | New York, NY | |
| 8 | 1 | 0 | male | 24.0 | 0 | 1 | PC 17558 | 247.5208 | B58 B60 | C | [null] | [null] | Montreal, PQ | |
| 9 | 1 | 0 | male | 36.0 | 0 | 0 | 13050 | 75.2417 | C6 | C | A | [null] | Winnipeg, MN | |
| 10 | 1 | 0 | male | 25.0 | 0 | 0 | 13905 | 26.0 | [null] | C | [null] | 148 | San Francisco, CA | |
| 11 | 1 | 0 | male | 45.0 | 0 | 0 | 113784 | 35.5 | T | S | [null] | [null] | Trenton, NJ | |
| 12 | 1 | 0 | male | 42.0 | 0 | 0 | 110489 | 26.55 | D22 | S | [null] | [null] | London / Winnipeg, MB | |
| 13 | 1 | 0 | male | 41.0 | 0 | 0 | 113054 | 30.5 | A21 | S | [null] | [null] | Pomeroy, WA | |
| 14 | 1 | 0 | male | 48.0 | 0 | 0 | PC 17591 | 50.4958 | B10 | C | [null] | 208 | Omaha, NE | |
| 15 | 1 | 0 | male | [null] | 0 | 0 | 112379 | 39.6 | [null] | C | [null] | [null] | Philadelphia, PA | |
| 16 | 1 | 0 | male | 45.0 | 0 | 0 | 113050 | 26.55 | B38 | S | [null] | [null] | Washington, DC | |
| 17 | 1 | 0 | male | [null] | 0 | 0 | 113798 | 31.0 | [null] | S | [null] | [null] | [null] | |
| 18 | 1 | 0 | male | 33.0 | 0 | 0 | 695 | 5.0 | B51 B53 B55 | S | [null] | [null] | New York, NY | |
| 19 | 1 | 0 | male | 28.0 | 0 | 0 | 113059 | 47.1 | [null] | S | [null] | [null] | Montevideo, Uruguay | |
| 20 | 1 | 0 | male | 17.0 | 0 | 0 | 113059 | 47.1 | [null] | S | [null] | [null] | Montevideo, Uruguay | |
| 21 | 1 | 0 | male | 49.0 | 0 | 0 | 19924 | 26.0 | [null] | S | [null] | [null] | Ascot, Berkshire / Rochester, NY | |
| 22 | 1 | 0 | male | 36.0 | 1 | 0 | 19877 | 78.85 | C46 | S | [null] | 172 | Little Onn Hall, Staffs | |
| 23 | 1 | 0 | male | 46.0 | 1 | 0 | W.E.P. 5734 | 61.175 | E31 | S | [null] | [null] | Amenia, ND | |
| 24 | 1 | 0 | male | [null] | 0 | 0 | 112051 | 0.0 | [null] | S | [null] | [null] | Liverpool, England / Belfast | |
| 25 | 1 | 0 | male | 27.0 | 1 | 0 | 13508 | 136.7792 | C89 | C | [null] | [null] | Los Angeles, CA | |
| 26 | 1 | 0 | male | [null] | 0 | 0 | 110465 | 52.0 | A14 | S | [null] | [null] | Stoughton, MA | |
| 27 | 1 | 0 | male | 47.0 | 0 | 0 | 5727 | 25.5875 | E58 | S | [null] | [null] | Victoria, BC | |
| 28 | 1 | 0 | male | 37.0 | 1 | 1 | PC 17756 | 83.1583 | E52 | C | [null] | [null] | Lakewood, NJ | |
| 29 | 1 | 0 | male | [null] | 0 | 0 | 113791 | 26.55 | [null] | S | [null] | [null] | Roachdale, IN | |
| 30 | 1 | 0 | male | 70.0 | 1 | 1 | WE/P 5735 | 71.0 | B22 | S | [null] | 269 | Milwaukee, WI | |
| 31 | 1 | 0 | male | 39.0 | 1 | 0 | PC 17599 | 71.2833 | C85 | C | [null] | [null] | New York, NY | |
| 32 | 1 | 0 | male | 31.0 | 1 | 0 | F.C. 12750 | 52.0 | B71 | S | [null] | [null] | Montreal, PQ | |
| 33 | 1 | 0 | male | 50.0 | 1 | 0 | PC 17761 | 106.425 | C86 | C | [null] | 62 | Deephaven, MN / Cedar Rapids, IA | |
| 34 | 1 | 0 | male | 39.0 | 0 | 0 | PC 17580 | 29.7 | A18 | C | [null] | 133 | Philadelphia, PA | |
| 35 | 1 | 0 | female | 36.0 | 0 | 0 | PC 17531 | 31.6792 | A29 | C | [null] | [null] | New York, NY | |
| 36 | 1 | 0 | male | [null] | 0 | 0 | PC 17483 | 221.7792 | C95 | S | [null] | [null] | [null] | |
| 37 | 1 | 0 | male | 30.0 | 0 | 0 | 113051 | 27.75 | C111 | C | [null] | [null] | New York, NY | |
| 38 | 1 | 0 | male | 19.0 | 3 | 2 | 19950 | 263.0 | C23 C25 C27 | S | [null] | [null] | Winnipeg, MB | |
| 39 | 1 | 0 | male | 64.0 | 1 | 4 | 19950 | 263.0 | C23 C25 C27 | S | [null] | [null] | Winnipeg, MB | |
| 40 | 1 | 0 | male | [null] | 0 | 0 | 113778 | 26.55 | D34 | S | [null] | [null] | Westcliff-on-Sea, Essex | |
| 41 | 1 | 0 | male | [null] | 0 | 0 | 112058 | 0.0 | B102 | S | [null] | [null] | [null] | |
| 42 | 1 | 0 | male | 37.0 | 1 | 0 | 113803 | 53.1 | C123 | S | [null] | [null] | Scituate, MA | |
| 43 | 1 | 0 | male | 47.0 | 0 | 0 | 111320 | 38.5 | E63 | S | [null] | 275 | St Anne's-on-Sea, Lancashire | |
| 44 | 1 | 0 | male | 24.0 | 0 | 0 | PC 17593 | 79.2 | B86 | C | [null] | [null] | [null] | |
| 45 | 1 | 0 | male | 71.0 | 0 | 0 | PC 17754 | 34.6542 | A5 | C | [null] | [null] | New York, NY | |
| 46 | 1 | 0 | male | 38.0 | 0 | 1 | PC 17582 | 153.4625 | C91 | S | [null] | 147 | Winnipeg, MB | |
| 47 | 1 | 0 | male | 46.0 | 0 | 0 | PC 17593 | 79.2 | B82 B84 | C | [null] | [null] | New York, NY | |
| 48 | 1 | 0 | male | [null] | 0 | 0 | 113796 | 42.4 | [null] | S | [null] | [null] | [null] | |
| 49 | 1 | 0 | male | 45.0 | 1 | 0 | 36973 | 83.475 | C83 | S | [null] | [null] | New York, NY | |
| 50 | 1 | 0 | male | 40.0 | 0 | 0 | 112059 | 0.0 | B94 | S | [null] | 110 | [null] | |
| 51 | 1 | 0 | male | 55.0 | 1 | 1 | 12749 | 93.5 | B69 | S | [null] | 307 | Montreal, PQ | |
| 52 | 1 | 0 | male | 42.0 | 0 | 0 | 113038 | 42.5 | B11 | S | [null] | [null] | London / Middlesex | |
| 53 | 1 | 0 | male | [null] | 0 | 0 | 17463 | 51.8625 | E46 | S | [null] | [null] | Brighton, MA | |
| 54 | 1 | 0 | male | 55.0 | 0 | 0 | 680 | 50.0 | C39 | S | [null] | [null] | London / Birmingham | |
| 55 | 1 | 0 | male | 42.0 | 1 | 0 | 113789 | 52.0 | [null] | S | [null] | 38 | New York, NY | |
| 56 | 1 | 0 | male | [null] | 0 | 0 | PC 17600 | 30.6958 | [null] | C | 14 | [null] | New York, NY | |
| 57 | 1 | 0 | female | 50.0 | 0 | 0 | PC 17595 | 28.7125 | C49 | C | [null] | [null] | Paris, France New York, NY | |
| 58 | 1 | 0 | male | 46.0 | 0 | 0 | 694 | 26.0 | [null] | S | [null] | 80 | Bennington, VT | |
| 59 | 1 | 0 | male | 50.0 | 0 | 0 | 113044 | 26.0 | E60 | S | [null] | [null] | London | |
| 60 | 1 | 0 | male | 32.5 | 0 | 0 | 113503 | 211.5 | C132 | C | [null] | 45 | [null] | |
| 61 | 1 | 0 | male | 58.0 | 0 | 0 | 11771 | 29.7 | B37 | C | [null] | 258 | Buffalo, NY | |
| 62 | 1 | 0 | male | 41.0 | 1 | 0 | 17464 | 51.8625 | D21 | S | [null] | [null] | Southington / Noank, CT | |
| 63 | 1 | 0 | male | [null] | 0 | 0 | 113028 | 26.55 | C124 | S | [null] | [null] | Portland, OR | |
| 64 | 1 | 0 | male | [null] | 0 | 0 | PC 17612 | 27.7208 | [null] | C | [null] | [null] | Chicago, IL | |
| 65 | 1 | 0 | male | 29.0 | 0 | 0 | 113501 | 30.0 | D6 | S | [null] | 126 | Springfield, MA | |
| 66 | 1 | 0 | male | 30.0 | 0 | 0 | 113801 | 45.5 | [null] | S | [null] | [null] | London / New York, NY | |
| 67 | 1 | 0 | male | 30.0 | 0 | 0 | 110469 | 26.0 | C106 | S | [null] | [null] | Brockton, MA | |
| 68 | 1 | 0 | male | 19.0 | 1 | 0 | 113773 | 53.1 | D30 | S | [null] | [null] | New York, NY | |
| 69 | 1 | 0 | male | 46.0 | 0 | 0 | 13050 | 75.2417 | C6 | C | [null] | 292 | Vancouver, BC | |
| 70 | 1 | 0 | male | 54.0 | 0 | 0 | 17463 | 51.8625 | E46 | S | [null] | 175 | Dorchester, MA | |
| 71 | 1 | 0 | male | 28.0 | 1 | 0 | PC 17604 | 82.1708 | [null] | C | [null] | [null] | New York, NY | |
| 72 | 1 | 0 | male | 65.0 | 0 | 0 | 13509 | 26.55 | E38 | S | [null] | 249 | East Bridgewater, MA | |
| 73 | 1 | 0 | male | 44.0 | 2 | 0 | 19928 | 90.0 | C78 | Q | [null] | 230 | Fond du Lac, WI | |
| 74 | 1 | 0 | male | 55.0 | 0 | 0 | 113787 | 30.5 | C30 | S | [null] | [null] | Montreal, PQ | |
| 75 | 1 | 0 | male | 47.0 | 0 | 0 | 113796 | 42.4 | [null] | S | [null] | [null] | Washington, DC | |
| 76 | 1 | 0 | male | 37.0 | 0 | 1 | PC 17596 | 29.7 | C118 | C | [null] | [null] | Brooklyn, NY | |
| 77 | 1 | 0 | male | 58.0 | 0 | 2 | 35273 | 113.275 | D48 | C | [null] | 122 | Lexington, MA | |
| 78 | 1 | 0 | male | 64.0 | 0 | 0 | 693 | 26.0 | [null] | S | [null] | 263 | Isle of Wight, England | |
| 79 | 1 | 0 | male | 65.0 | 0 | 1 | 113509 | 61.9792 | B30 | C | [null] | 234 | Providence, RI | |
| 80 | 1 | 0 | male | 28.5 | 0 | 0 | PC 17562 | 27.7208 | D43 | C | [null] | 189 | ?Havana, Cuba | |
| 81 | 1 | 0 | male | [null] | 0 | 0 | 112052 | 0.0 | [null] | S | [null] | [null] | Belfast | |
| 82 | 1 | 0 | male | 45.5 | 0 | 0 | 113043 | 28.5 | C124 | S | [null] | 166 | Surbiton Hill, Surrey | |
| 83 | 1 | 0 | male | 23.0 | 0 | 0 | 12749 | 93.5 | B24 | S | [null] | [null] | Montreal, PQ | |
| 84 | 1 | 0 | male | 29.0 | 1 | 0 | 113776 | 66.6 | C2 | S | [null] | [null] | Isleworth, England | |
| 85 | 1 | 0 | male | 18.0 | 1 | 0 | PC 17758 | 108.9 | C65 | C | [null] | [null] | Madrid, Spain | |
| 86 | 1 | 0 | male | 47.0 | 0 | 0 | 110465 | 52.0 | C110 | S | [null] | 207 | Worcester, MA | |
| 87 | 1 | 0 | male | 38.0 | 0 | 0 | 19972 | 0.0 | [null] | S | [null] | [null] | Rotterdam, Netherlands | |
| 88 | 1 | 0 | male | 22.0 | 0 | 0 | PC 17760 | 135.6333 | [null] | C | [null] | 232 | [null] | |
| 89 | 1 | 0 | male | [null] | 0 | 0 | PC 17757 | 227.525 | [null] | C | [null] | [null] | [null] | |
| 90 | 1 | 0 | male | 31.0 | 0 | 0 | PC 17590 | 50.4958 | A24 | S | [null] | [null] | Trenton, NJ | |
| 91 | 1 | 0 | male | [null] | 0 | 0 | 113767 | 50.0 | A32 | S | [null] | [null] | Seattle, WA | |
| 92 | 1 | 0 | male | 36.0 | 0 | 0 | 13049 | 40.125 | A10 | C | [null] | [null] | Winnipeg, MB | |
| 93 | 1 | 0 | male | 55.0 | 1 | 0 | PC 17603 | 59.4 | [null] | C | [null] | [null] | New York, NY | |
| 94 | 1 | 0 | male | 33.0 | 0 | 0 | 113790 | 26.55 | [null] | S | [null] | 109 | London | |
| 95 | 1 | 0 | male | 61.0 | 1 | 3 | PC 17608 | 262.375 | B57 B59 B63 B66 | C | [null] | [null] | Haverford, PA / Cooperstown, NY | |
| 96 | 1 | 0 | male | 50.0 | 1 | 0 | 13507 | 55.9 | E44 | S | [null] | [null] | Duluth, MN | |
| 97 | 1 | 0 | male | 56.0 | 0 | 0 | 113792 | 26.55 | [null] | S | [null] | [null] | New York, NY | |
| 98 | 1 | 0 | male | 56.0 | 0 | 0 | 17764 | 30.6958 | A7 | C | [null] | [null] | St James, Long Island, NY | |
| 99 | 1 | 0 | male | 24.0 | 1 | 0 | 13695 | 60.0 | C31 | S | [null] | [null] | Huntington, WV | |
| 100 | 1 | 0 | male | [null] | 0 | 0 | 113056 | 26.0 | A19 | S | [null] | [null] | Streatham, Surrey |
Rows: 1-100 | Columns: 14
In [5]:
titanic.case_when("age_category",
titanic["age"] < 12, "children",
titanic["age"] < 18, "teenagers",
titanic["age"] > 60, "seniors",
titanic["age"] < 25, "young adults",
"adults")
titanic[["age", "age_category"]]
Out[5]:
123 ageNumeric(6,3) | Abc age_categoryVarchar(12) | |
| 1 | 2.0 | children |
| 2 | 30.0 | adults |
| 3 | 25.0 | adults |
| 4 | 39.0 | adults |
| 5 | 71.0 | seniors |
| 6 | 47.0 | adults |
| 7 | [null] | adults |
| 8 | 24.0 | young adults |
| 9 | 36.0 | adults |
| 10 | 25.0 | adults |
| 11 | 45.0 | adults |
| 12 | 42.0 | adults |
| 13 | 41.0 | adults |
| 14 | 48.0 | adults |
| 15 | [null] | adults |
| 16 | 45.0 | adults |
| 17 | [null] | adults |
| 18 | 33.0 | adults |
| 19 | 28.0 | adults |
| 20 | 17.0 | teenagers |
| 21 | 49.0 | adults |
| 22 | 36.0 | adults |
| 23 | 46.0 | adults |
| 24 | [null] | adults |
| 25 | 27.0 | adults |
| 26 | [null] | adults |
| 27 | 47.0 | adults |
| 28 | 37.0 | adults |
| 29 | [null] | adults |
| 30 | 70.0 | seniors |
| 31 | 39.0 | adults |
| 32 | 31.0 | adults |
| 33 | 50.0 | adults |
| 34 | 39.0 | adults |
| 35 | 36.0 | adults |
| 36 | [null] | adults |
| 37 | 30.0 | adults |
| 38 | 19.0 | young adults |
| 39 | 64.0 | seniors |
| 40 | [null] | adults |
| 41 | [null] | adults |
| 42 | 37.0 | adults |
| 43 | 47.0 | adults |
| 44 | 24.0 | young adults |
| 45 | 71.0 | seniors |
| 46 | 38.0 | adults |
| 47 | 46.0 | adults |
| 48 | [null] | adults |
| 49 | 45.0 | adults |
| 50 | 40.0 | adults |
| 51 | 55.0 | adults |
| 52 | 42.0 | adults |
| 53 | [null] | adults |
| 54 | 55.0 | adults |
| 55 | 42.0 | adults |
| 56 | [null] | adults |
| 57 | 50.0 | adults |
| 58 | 46.0 | adults |
| 59 | 50.0 | adults |
| 60 | 32.5 | adults |
| 61 | 58.0 | adults |
| 62 | 41.0 | adults |
| 63 | [null] | adults |
| 64 | [null] | adults |
| 65 | 29.0 | adults |
| 66 | 30.0 | adults |
| 67 | 30.0 | adults |
| 68 | 19.0 | young adults |
| 69 | 46.0 | adults |
| 70 | 54.0 | adults |
| 71 | 28.0 | adults |
| 72 | 65.0 | seniors |
| 73 | 44.0 | adults |
| 74 | 55.0 | adults |
| 75 | 47.0 | adults |
| 76 | 37.0 | adults |
| 77 | 58.0 | adults |
| 78 | 64.0 | seniors |
| 79 | 65.0 | seniors |
| 80 | 28.5 | adults |
| 81 | [null] | adults |
| 82 | 45.5 | adults |
| 83 | 23.0 | young adults |
| 84 | 29.0 | adults |
| 85 | 18.0 | young adults |
| 86 | 47.0 | adults |
| 87 | 38.0 | adults |
| 88 | 22.0 | young adults |
| 89 | [null] | adults |
| 90 | 31.0 | adults |
| 91 | [null] | adults |
| 92 | 36.0 | adults |
| 93 | 55.0 | adults |
| 94 | 33.0 | adults |
| 95 | 61.0 | seniors |
| 96 | 50.0 | adults |
| 97 | 56.0 | adults |
| 98 | 56.0 | adults |
| 99 | 24.0 | young adults |
| 100 | [null] | adults |
Rows: 1-100 | Columns: 2
See Also¶
| vDataFrame[].decode | Encodes the vcolumn using a User Defined Encoding. |
| vDataFrame.eval | Evaluates a customized expression. |
(c) Copyright [2020-2023] OpenText
