Loading...

vastorbit.VastColumn.normalize

VastColumn.normalize(method: Literal['zscore', 'robust_zscore', 'minmax'] = 'zscore', by: Annotated[str | list[str], 'STRING representing one column or a list of columns'] | None = None, return_trans: bool = False) VastFrame

Scales the input VastColumns using the input method.

Parameters:
  • method (str, optional) –

    Method used to scale the data.
    • zscore:

      Normalization using the Z-Score.

      \[Z_{score}(x) = (x - x_{avg}) / x_{std}\]
    • robust_zscore:

      Normalization using the Robust Z-Score.

      \[Z_{rscore}(x) = (x - x_{med}) / (1.4826 * x_{mad})\]
    • minmax:

      Normalization using the MinMax.

      \[Z_{minmax}(x) = (x - x_{min}) / (x_{max} - x_{min})\]

  • by (SQLColumns, optional) – VastColumns used in the partition.

  • return_trans (bool, optimal) – If set to True, the method returns the transformation used instead of the parent VastFrame. This parameter is used for testing purposes.

Returns:

self._parent

Return type:

VastFrame

Examples

We import vastorbit:

import vastorbit as vo

Hint

By assigning an alias to vastorbit, we mitigate the risk of code collisions with other libraries. This precaution is necessary because vastorbit uses commonly known function names like “average” and “median”, which can potentially lead to naming conflicts. The use of an alias ensures that the functions from vastorbit are used as intended without interfering with functions from other libraries.

For this example, we will use the Titanic dataset.

import vastorbit.datasets as vod

data = vod.load_titanic()
123
pclass
Integer
123
survived
Integer
Abc
name
Varchar(164)
Abc
sex
Varchar(20)
123
age
Double
123
sibsp
Integer
123
parch
Integer
Abc
ticket
Varchar(36)
123
fare
Double
Abc
cabin
Varchar(30)
Abc
embarked
Varchar(20)
Abc
boat
Varchar(100)
123
body
Integer
Abc
home.dest
Varchar(100)
131McCormack, Mr. Thomas Josephmale[null]003672287.75[null]Q[null][null][null]
231McCoy, Miss. Agnesfemale[null]2036722623.25[null]Q16[null][null]
331McCoy, Miss. Aliciafemale[null]2036722623.25[null]Q16[null][null]
431McCoy, Mr. Bernardmale[null]2036722623.25[null]Q16[null][null]
531McDermott, Miss. Brigdet Deliafemale[null]003309327.7875[null]Q13[null][null]
630McEvoy, Mr. Michaelmale[null]003656815.5[null]Q[null][null][null]
731McGovern, Miss. Maryfemale[null]003309317.8792[null]Q13[null][null]
831McGowan, Miss. Anna "Annie"female15.0003309238.0292[null]Q[null][null][null]
930McGowan, Miss. Katherinefemale35.00092327.75[null]Q[null][null][null]
1030McMahon, Mr. Martinmale[null]003703727.75[null]Q[null][null][null]
1130McNamee, Mr. Nealmale24.01037656616.1[null]S[null][null][null]
1230McNamee, Mrs. Neal (Eileen O'Leary)female19.01037656616.1[null]S[null]53[null]
1330McNeill, Miss. Bridgetfemale[null]003703687.75[null]Q[null][null][null]
1430Meanwell, Miss. (Marion Ogden)female[null]00SOTON/O.Q. 3920878.05[null]S[null][null][null]
1530Meek, Mrs. Thomas (Annie Louise Rowley)female[null]003430958.05[null]S[null][null][null]
1630Meo, Mr. Alfonzomale55.500A.5. 112068.05[null]S[null]201[null]
1730Mernagh, Mr. Robertmale[null]003687037.75[null]Q[null][null][null]
1831Midtsjo, Mr. Karl Albertmale21.0003455017.775[null]S15[null][null]
1930Miles, Mr. Frankmale[null]003593068.05[null]S[null][null][null]
2030Mineff, Mr. Ivanmale24.0003492337.8958[null]S[null][null][null]
2130Minkoff, Mr. Lazarmale21.0003492117.8958[null]S[null][null][null]
2230Mionoff, Mr. Stoytchomale28.0003492077.8958[null]S[null][null][null]
2330Mitkoff, Mr. Mitomale[null]003492217.8958[null]S[null][null][null]
2431Mockler, Miss. Helen Mary "Ellie"female[null]003309807.8792[null]Q16[null][null]
2530Moen, Mr. Sigurd Hansenmale25.0003481237.65F G73S[null]309[null]
2631Moor, Master. Meiermale6.00139209612.475E121S14[null][null]
2731Moor, Mrs. (Beila)female27.00139209612.475E121S14[null][null]
2830Moore, Mr. Leonard Charlesmale[null]00A4. 545108.05[null]S[null][null][null]
2931Moran, Miss. Berthafemale[null]1037111024.15[null]Q16[null][null]
3030Moran, Mr. Daniel Jmale[null]1037111024.15[null]Q[null][null][null]
3130Moran, Mr. Jamesmale[null]003308778.4583[null]Q[null][null][null]
3230Morley, Mr. Williammale34.0003645068.05[null]S[null][null][null]
3330Morrow, Mr. Thomas Rowanmale[null]003726227.75[null]Q[null][null][null]
3431Moss, Mr. Albert Johanmale[null]003129917.775[null]SB[null][null]
3531Moubarek, Master. Geriosmale[null]11266115.2458[null]CC[null][null]
3631Moubarek, Master. Halim Gonios ("William George")male[null]11266115.2458[null]CC[null][null]
3731Moubarek, Mrs. George (Omine "Amenia" Alexander)female[null]02266115.2458[null]CC[null][null]
3831Moussa, Mrs. (Mantoura Boulos)female[null]0026267.2292[null]C[null][null][null]
3930Moutal, Mr. Rahamin Haimmale[null]003747468.05[null]S[null][null][null]
4031Mullens, Miss. Katherine "Katie"female[null]00358527.7333[null]Q16[null][null]
4131Mulvihill, Miss. Bertha Efemale24.0003826537.75[null]Q15[null][null]
4230Murdlin, Mr. Josephmale[null]00A./5. 32358.05[null]S[null][null][null]
4331Murphy, Miss. Katherine "Kate"female[null]1036723015.5[null]Q16[null][null]
4431Murphy, Miss. Margaret Janefemale[null]1036723015.5[null]Q16[null][null]
4531Murphy, Miss. Norafemale[null]003656815.5[null]Q16[null][null]
4630Myhrman, Mr. Pehr Fabian Oliver Malkolmmale18.0003470787.75[null]S[null][null][null]
4730Naidenoff, Mr. Penkomale22.0003492067.8958[null]S[null][null][null]
4831Najib, Miss. Adele Kiamie "Jane"female15.00026677.225[null]CC[null][null]
4931Nakid, Miss. Maria ("Mary")female1.002265315.7417[null]CC[null][null]
5031Nakid, Mr. Sahidmale20.011265315.7417[null]CC[null][null]
5131Nakid, Mrs. Said (Waika "Mary" Mowad)female19.011265315.7417[null]CC[null][null]
5230Nancarrow, Mr. William Henrymale33.000A./5. 33388.05[null]S[null][null][null]
5330Nankoff, Mr. Minkomale[null]003492187.8958[null]S[null][null][null]
5430Nasr, Mr. Mustafamale[null]0026527.2292[null]C[null][null][null]
5530Naughton, Miss. Hannahfemale[null]003652377.75[null]Q[null][null][null]
5630Nenkoff, Mr. Christomale[null]003492347.8958[null]S[null][null][null]
5731Nicola-Yarred, Master. Eliasmale12.010265111.2417[null]CC[null][null]
5831Nicola-Yarred, Miss. Jamilafemale14.010265111.2417[null]CC[null][null]
5930Nieminen, Miss. Manta Josefinafemale29.00031012977.925[null]S[null][null][null]
6030Niklasson, Mr. Samuelmale28.0003636118.05[null]S[null][null][null]
6131Nilsson, Miss. Berta Oliviafemale18.0003470667.775[null]SD[null][null]
6231Nilsson, Miss. Helmina Josefinafemale26.0003474707.8542[null]S13[null][null]
6330Nilsson, Mr. August Ferdinandmale21.0003504107.8542[null]S[null][null][null]
6430Nirva, Mr. Iisakki Antino Aijomale41.000SOTON/O2 31012727.125[null]S[null][null]Finland Sudbury, ON
6531Niskanen, Mr. Juhamale39.000STON/O 2. 31012897.925[null]S9[null][null]
6630Nosworthy, Mr. Richard Catermale21.000A/4. 398867.8[null]S[null][null][null]
6730Novel, Mr. Mansouermale28.50026977.2292[null]C[null]181[null]
6831Nysten, Miss. Anna Sofiafemale22.0003470817.75[null]S13[null][null]
6930Nysveen, Mr. Johan Hansenmale61.0003453646.2375[null]S[null][null][null]
7030O'Brien, Mr. Thomasmale[null]1037036515.5[null]Q[null][null][null]
7130O'Brien, Mr. Timothymale[null]003309797.8292[null]Q[null][null][null]
7231O'Brien, Mrs. Thomas (Johanna "Hannah" Godfrey)female[null]1037036515.5[null]Q[null][null][null]
7330O'Connell, Mr. Patrick Dmale[null]003349127.7333[null]Q[null][null][null]
7430O'Connor, Mr. Mauricemale[null]003710607.75[null]Q[null][null][null]
7530O'Connor, Mr. Patrickmale[null]003667137.75[null]Q[null][null][null]
7630Odahl, Mr. Nils Martinmale23.00072679.225[null]S[null][null][null]
7730O'Donoghue, Ms. Bridgetfemale[null]003648567.75[null]Q[null][null][null]
7831O'Driscoll, Miss. Bridgetfemale[null]00143117.75[null]QD[null][null]
7931O'Dwyer, Miss. Ellen "Nellie"female[null]003309597.8792[null]Q[null][null][null]
8031Ohman, Miss. Velinfemale22.0003470857.775[null]SC[null][null]
8131O'Keefe, Mr. Patrickmale[null]003684027.75[null]QB[null][null]
8231O'Leary, Miss. Hanora "Norah"female[null]003309197.8292[null]Q13[null][null]
8331Olsen, Master. Artur Karlmale9.001C 173683.1708[null]S13[null][null]
8430Olsen, Mr. Henry Margidomale28.000C 400122.525[null]S[null]173[null]
8530Olsen, Mr. Karl Siegwart Andreasmale42.00145798.4042[null]S[null][null][null]
8630Olsen, Mr. Ole Martinmale[null]00Fa 2653027.3125[null]S[null][null][null]
8730Olsson, Miss. Elinafemale31.0003504077.8542[null]S[null][null][null]
8830Olsson, Mr. Nils Johan Goranssonmale28.0003474647.8542[null]S[null][null][null]
8931Olsson, Mr. Oscar Wilhelmmale32.0003470797.775[null]SA[null][null]
9030Olsvigen, Mr. Thor Andersonmale20.00065639.225[null]S[null]89Oslo, Norway Cameron, WI
9130Oreskovic, Miss. Jelkafemale23.0003150858.6625[null]S[null][null][null]
9230Oreskovic, Miss. Marijafemale20.0003150968.6625[null]S[null][null][null]
9330Oreskovic, Mr. Lukamale20.0003150948.6625[null]S[null][null][null]
9430Osen, Mr. Olaf Elonmale16.00075349.2167[null]S[null][null][null]
9531Osman, Mrs. Marafemale31.0003492448.6833[null]S[null][null][null]
9630O'Sullivan, Miss. Bridget Maryfemale[null]003309097.6292[null]Q[null][null][null]
9730Palsson, Master. Gosta Leonardmale2.03134990921.075[null]S[null]4[null]
9830Palsson, Master. Paul Folkemale6.03134990921.075[null]S[null][null][null]
9930Palsson, Miss. Stina Violafemale3.03134990921.075[null]S[null][null][null]
10030Palsson, Miss. Torborg Danirafemale8.03134990921.075[null]S[null][null][null]
Rows: 1-100 | Columns: 14

Note

vastorbit offers a wide range of sample datasets that are ideal for training and testing purposes. You can explore the full list of available datasets in the Datasets, which provides detailed information on each dataset and how to use them effectively. These datasets are invaluable resources for honing your data analysis and machine learning skills within the vastorbit environment.

Let’s look at the “fare” and “age” of the passengers.

data[["age", "fare"]]
123
age
Double
123
fare
Double
1[null]7.75
2[null]23.25
3[null]23.25
4[null]23.25
5[null]7.7875
6[null]15.5
7[null]7.8792
815.08.0292
935.07.75
10[null]7.75
1124.016.1
1219.016.1
13[null]7.75
14[null]8.05
15[null]8.05
1655.58.05
17[null]7.75
1821.07.775
19[null]8.05
2024.07.8958
2121.07.8958
2228.07.8958
23[null]7.8958
24[null]7.8792
2525.07.65
266.012.475
2727.012.475
28[null]8.05
29[null]24.15
30[null]24.15
31[null]8.4583
3234.08.05
33[null]7.75
34[null]7.775
35[null]15.2458
36[null]15.2458
37[null]15.2458
38[null]7.2292
39[null]8.05
40[null]7.7333
4124.07.75
42[null]8.05
43[null]15.5
44[null]15.5
45[null]15.5
4618.07.75
4722.07.8958
4815.07.225
491.015.7417
5020.015.7417
5119.015.7417
5233.08.05
53[null]7.8958
54[null]7.2292
55[null]7.75
56[null]7.8958
5712.011.2417
5814.011.2417
5929.07.925
6028.08.05
6118.07.775
6226.07.8542
6321.07.8542
6441.07.125
6539.07.925
6621.07.8
6728.57.2292
6822.07.75
6961.06.2375
70[null]15.5
71[null]7.8292
72[null]15.5
73[null]7.7333
74[null]7.75
75[null]7.75
7623.09.225
77[null]7.75
78[null]7.75
79[null]7.8792
8022.07.775
81[null]7.75
82[null]7.8292
839.03.1708
8428.022.525
8542.08.4042
86[null]7.3125
8731.07.8542
8828.07.8542
8932.07.775
9020.09.225
9123.08.6625
9220.08.6625
9320.08.6625
9416.09.2167
9531.08.6833
96[null]7.6292
972.021.075
986.021.075
993.021.075
1008.021.075
Rows: 1-100 | Columns: 2

Note

You can observe that “age” and “fare” features lie in different numerical intervals so it’s probably a good idea to normalize them.

Let’s use the VastColumn.scale() method to normalize the data.

data["age"].scale(method = "minmax")
data["fare"].scale(method = "minmax")
data[["age", "fare"]]
123
age
Double
123
fare
Double
1[null]0.015126992566498259
2[null]0.04538097769949478
3[null]0.04538097769949478
4[null]0.04538097769949478
5[null]0.015200187691820024
6[null]0.030253985132996517
7[null]0.01537917417160685
80.185769760741575860.015671954672893913
90.43630214205186020.015126992566498259
10[null]0.015126992566498259
110.29850933233120380.031425107138144774
120.23587623700363270.031425107138144774
13[null]0.015126992566498259
14[null]0.015712553569072387
15[null]0.015712553569072387
160.69309783289490170.015712553569072387
17[null]0.015126992566498259
180.260929475134661140.015175789316712771
19[null]0.015712553569072387
200.29850933233120380.015411575213749284
210.260929475134661140.015411575213749284
220.34861580859326070.015411575213749284
23[null]0.015411575213749284
24[null]0.01537917417160685
250.3110359513967180.014931805565640218
260.07303018915194790.024349578357040744
270.336089189527746470.024349578357040744
28[null]0.015712553569072387
29[null]0.04713766070721715
30[null]0.04713766070721715
31[null]0.01650950209357577
320.423775522986345960.015712553569072387
33[null]0.015126992566498259
34[null]0.015175789316712771
35[null]0.029757819776815374
36[null]0.029757819776815374
37[null]0.029757819776815374
38[null]0.014110458666029575
39[null]0.015712553569072387
40[null]0.015094396337354966
410.29850933233120380.015126992566498259
42[null]0.015712553569072387
43[null]0.030253985132996517
44[null]0.030253985132996517
45[null]0.030253985132996517
460.223349617938118470.015126992566498259
470.273456094200175360.015411575213749284
480.185769760741575860.014102260811993537
490.01039709382437680.030725752114070404
500.248402856069146920.030725752114070404
510.23587623700363270.030725752114070404
520.411248903920831740.015712553569072387
53[null]0.015411575213749284
54[null]0.014110458666029575
55[null]0.015126992566498259
56[null]0.015411575213749284
570.14818990354503320.021942337075458514
580.173243141676061640.021942337075458514
590.361142427658774860.015468569817999833
600.34861580859326070.015712553569072387
610.223349617938118470.015175789316712771
620.323562570462232250.015330377421392339
630.260929475134661140.015330377421392339
640.51146185644494550.013907073811135496
650.48640861831391710.015468569817999833
660.260929475134661140.01522458606692728
670.35487911812601780.014110458666029575
680.273456094200175360.015126992566498259
690.76199423775522990.012174789178520372
70[null]0.030253985132996517
71[null]0.015281580671177828
72[null]0.030253985132996517
73[null]0.015094396337354966
74[null]0.015126992566498259
75[null]0.015126992566498259
760.28598271326568960.01800600082915438
77[null]0.015126992566498259
78[null]0.015126992566498259
79[null]0.01537917417160685
800.273456094200175360.015175789316712771
81[null]0.015126992566498259
82[null]0.015281580671177828
830.110610046348490550.006188989423206797
840.34861580859326070.04396587194327397
850.52398847551045970.01640390592611157
86[null]0.014273049437744325
870.38619566578980330.015330377421392339
880.34861580859326070.015330377421392339
890.39872228485531750.015175789316712771
900.248402856069146920.01800600082915438
910.28598271326568960.016908073949327893
920.248402856069146920.016908073949327893
930.248402856069146920.016908073949327893
940.198296379807090080.01798980030808316
950.38619566578980330.016948672845506364
96[null]0.014891206669461744
970.022923712889891020.04113566043083236
980.07303018915194790.04113566043083236
990.0354503319554052360.04113566043083236
1000.098083427282976320.04113566043083236
Rows: 1-100 | Columns: 2

Note

You can observe that both “age” and “fare” features now scale in [0,1] interval.