{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"id": "b10e5c25",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[ 0.5479121 -0.12224312 0.71719584 0.39473606 -0.8116453 0.9512447\n",
" 0.5222794 0.57212861 -0.74377273 -0.09922812 -0.25840395 0.85352998\n",
" 0.28773024 0.64552323 -0.1131716 -0.54552256 0.10916957 -0.87236549\n",
" 0.65526234 0.2633288 0.51617548 -0.29094806 0.94139605 0.78624224\n",
" 0.55676699 -0.61072258 -0.06655799 -0.91239247 -0.69142102 0.36609791\n",
" 0.48952431 0.93501946 -0.34834928 -0.25908059 -0.06088838 -0.62105728\n",
" -0.74015699 -0.04859015 -0.5461813 0.33962799 -0.12569616 0.66535639\n",
" 0.4005302 -0.37526672 0.6645196 0.60952871 -0.22504324 -0.42334379\n",
" 0.36499101 -0.72049503 -0.6001836 -0.98527546 0.57384876 0.32970171\n",
" 0.41033076 0.56145806 -0.08216845 0.13748239 -0.720406 -0.77093985\n",
" 0.33680592 -0.05780759 0.13047221 0.52999771 0.26943664 0.1071588\n",
" 0.11841432 -0.3920998 -0.93836433 -0.12656522 -0.57083065 -0.18294271\n",
" 0.70680615 -0.53212103 -0.88339452 -0.43723222 -0.41281248 0.32383303\n",
" 0.1140643 0.56779642 0.32862708 -0.18722628 0.62804077 -0.66605416\n",
" -0.95457585 -0.81990428 0.4447187 -0.07624554 -0.67745644 0.00208955\n",
" -0.69537579 0.39264075 -0.10768745 -0.23795755 -0.39697582 0.26056519\n",
" -0.27637478 -0.82470016 -0.7639882 0.92379533 0.81716138 0.39941427\n",
" -0.46826008 0.93835275 0.55750181 0.43378038 -0.101277 -0.45551688\n",
" -0.80721808 0.80520479 -0.08844742 -0.59527327 -0.38808675 0.15843914\n",
" -0.64645443 0.71322857 0.51703906 0.43892591 -0.13581392 0.25461768\n",
" 0.16819594 0.2996932 -0.83111136 -0.1683852 -0.91677165 -0.01201836\n",
" -0.34027758 -0.71095162 -0.79319406 0.17528914 -0.65881406 0.85024024\n",
" 0.16212228 -0.30626039 0.18183098 -0.95439226 0.91711843 -0.03539313\n",
" 0.56547045 -0.83454 -0.02668334 -0.01858601 0.87565291 0.1434561\n",
" -0.0530212 -0.46604867 -0.33686201 0.0413448 -0.12217708 -0.95677584\n",
" 0.65258385 0.79232154 -0.71950182 0.10807229 -0.78284852 0.34448019\n",
" -0.43753243 0.31884527 0.45398923 0.53729498 -0.78451811 0.83202369\n",
" -0.53957202 -0.92517489 0.10970494 -0.25815543 0.65957949 0.61650294\n",
" -0.36572221 0.90579879 -0.41816432 0.03011426 -0.48806982 0.87208714\n",
" -0.67078436 -0.91017876 -0.12980588 0.98475113 0.78335453 0.49721604\n",
" 0.78158498 0.78689328 0.03771672 -0.3681419 0.54402486 0.32332253\n",
" -0.25268454 -0.81106666 0.49357922 -0.47507897 0.8736263 -0.51805885\n",
" -0.75448414 0.66222534 -0.69343137 -0.64146338 0.19876558 0.74912408\n",
" -0.60713067 -0.37935265 0.55480968 0.94365285 0.00148237 -0.71220499\n",
" -0.97212742 -0.54068794 -0.73635556 0.35531735 -0.75633499 0.01265986\n",
" 0.38852487 0.16223322 -0.6004487 0.60824905 0.43081426 0.47796801\n",
" -0.7378845 -0.75249239 0.8551251 -0.20484361 -0.39810262 -0.02283191\n",
" 0.32572843 0.91124651 -0.42710755 0.84961686 -0.95028102 0.11039608\n",
" 0.26795022 -0.78820519 -0.71932081 -0.16177136 0.93246382 0.19208511\n",
" 0.86604644 0.60872183 -0.0652368 0.5695269 -0.96432643 -0.78171201\n",
" 0.65885723 0.59363418 -0.53471852 0.06153918 0.21203164 0.73547791\n",
" 0.20621431 -0.17485686 -0.25163191 -0.14823583 0.30386205 0.73498126\n",
" -0.09220624 -0.50432087 -0.52667527 0.49202856 0.63313753 -0.78944384\n",
" -0.86688229 0.18886733 -0.70765351 0.64932838 -0.37933065 -0.71225613\n",
" 0.84194094 -0.66893655 -0.43055984 -0.69277321 -0.76901987 -0.95770397\n",
" -0.88920918 -0.65071706 -0.89323613 0.18228763 0.36142905 -0.21273909\n",
" -0.36401781 0.00905247 0.75000988 0.70226325 -0.91304988 -0.63700318\n",
" -0.52651026 -0.50122485 0.1424653 -0.16747515 -0.90149176 -0.25277172\n",
" 0.0475059 -0.79665619 0.66691711 -0.89607627 0.84968374 -0.80177372\n",
" 0.6871499 0.80530629 0.95914136 0.60405176 0.55895508]\n",
"[ 0.28496655 0.55799271 -0.73089558 0.07213607 0.02844574 0.71514429\n",
" -0.07440127 -0.22982101 0.27912654 -0.46707336 -0.72046318 -0.04424545\n",
" -0.16622126 -0.53486012 -0.26497638 -0.2672151 -0.34500887 -0.24107184\n",
" 0.37148669 -0.40624705 0.89771585 0.83269604 -0.03817914 -0.34327759\n",
" 0.07086958 0.69712098 0.30517468 0.60878366 0.06544455 0.26583526\n",
" -0.42368877 0.46978632 -0.59519081 0.38959626 0.72143814 -0.73579433\n",
" 0.22875948 -0.8098085 0.45143126 -0.83101356 0.87187965 -0.72518414\n",
" 0.91776049 0.60176835 0.18736401 0.56524821 0.59022968 0.89205413\n",
" -0.49323329 0.18015179 -0.8099016 0.2323314 -0.65741739 0.12990122\n",
" 0.14486103 -0.06802969 0.04526355 0.52784678 0.59848943 -0.01569357\n",
" 0.19918688 0.86247247 -0.76053282 -0.76579287 -0.82458198 0.31572657\n",
" -0.1627834 0.54864283 0.34246283 -0.33272448 0.79673309 0.52506429\n",
" -0.45893012 -0.27161596 -0.37112004 -0.6847767 -0.70443325 0.87225493\n",
" -0.12419193 -0.23336035 0.45937142 0.10598613 0.87227997 0.56060299\n",
" -0.04126087 -0.24728105 0.97326309 0.43552047 0.90238932 -0.76304285\n",
" 0.70106736 0.27414777 -0.75615664 0.176516 0.37219273 -0.97539463\n",
" -0.09136408 0.65079902 -0.40928195 -0.08290384 -0.11537175 -0.39614522\n",
" 0.83688379 0.56258807 -0.77882318 0.99406932 0.75840005 -0.43218312\n",
" 0.67379316 -0.78716094 0.99820946 0.33136947 0.30025003 -0.81911855\n",
" 0.7940668 -0.94200099 -0.51834388 -0.71395625 0.55353588 -0.60359155\n",
" 0.82127645 0.31253808 -0.92767458 -0.98914033 -0.89668417 0.21185036\n",
" 0.60296362 -0.52289436 0.69881769 -0.88553612 0.60192771 0.85559086\n",
" 0.5442168 0.39624157 0.67596044 -0.9196974 -0.59643578 -0.75015264\n",
" 0.00906198 0.49037626 0.26002369 0.7022622 -0.68957402 0.46924218\n",
" -0.61391702 -0.4584825 0.41980939 0.96040957 0.22308721 -0.89099937\n",
" 0.23261794 -0.9152989 0.76829142 0.41915657 -0.65374431 -0.81655799\n",
" -0.63293354 0.96005436 -0.08287872 0.5681619 0.27281668 0.1448263\n",
" -0.70973949 0.89204891 -0.39731473 0.15603443 0.39955189 0.29846631\n",
" 0.88118882 -0.70312202 0.01670548 -0.19193122 -0.05166254 -0.76156495\n",
" -0.73181078 -0.44384891 -0.39059079 -0.14419357 0.22197509 0.26925823\n",
" -0.17637821 -0.18243378 -0.56474295 0.1766125 -0.36591818 -0.92788033\n",
" -0.16319991 -0.05173465 -0.54881426 0.14491587 0.1315438 0.40400436\n",
" 0.29589696 0.30486611 -0.3675717 0.57486444 0.09828877 -0.13716361\n",
" 0.25202496 -0.27868533 0.02547849 0.47341138 0.77280577 0.84211439\n",
" 0.00726585 0.04055023 0.59974082 -0.37109862 0.67476472 -0.01171671\n",
" -0.76828655 -0.85588171 0.68398642 -0.88886417 -0.43877713 -0.33173992\n",
" -0.65401111 -0.37221326 0.48538513 -0.97063431 0.65434685 0.71309605\n",
" -0.25547685 -0.6927742 0.20168082 -0.76065489 -0.27016128 0.91685836\n",
" 0.99092895 0.54420978 -0.37807698 0.3753301 0.41081273 -0.22431661\n",
" 0.28177727 -0.97854471 -0.58188468 0.05017661 -0.67249739 -0.66818626\n",
" 0.67260858 0.97826601 0.11193886 0.67813946 0.98064333 -0.71680822\n",
" -0.10350877 -0.21485457 -0.83990143 0.51066035 -0.13244195 -0.06134613\n",
" -0.69865405 -0.6381467 0.81420724 -0.91070182 -0.53429543 -0.41588134\n",
" -0.01960492 0.17289035 -0.01342005 -0.83176933 -0.51266509 0.68717677\n",
" 0.2751774 0.2982981 0.34040651 0.52580604 -0.88378304 -0.26678323\n",
" 0.07905487 -0.32308703 0.68895775 -0.03485498 0.53725518 0.70403103\n",
" 0.00958297 0.81910449 0.17424788 0.7005486 -0.31881841 -0.00236608\n",
" 0.06282208 -0.79004057 -0.20289499 0.83467535 0.26166448 -0.64498684\n",
" -0.32228873 -0.61679398 -0.95035374 0.85492092 -0.10358534 -0.38492986\n",
" 0.19695438 -0.98537109 -0.44395579 0.40606693 0.26753955]\n",
" Counter Rollout CounterPlusRollout Timestamp\n",
"0 37.270658 -59.474345 -22.203688 2025-01-01 00:00:00\n",
"1 43.561734 -54.184658 -10.622924 2025-01-01 00:00:01\n",
"2 42.158150 -43.826926 -1.668776 2025-01-01 00:00:02\n",
"3 50.392926 -57.394165 -7.001239 2025-01-01 00:00:03\n",
"4 54.925249 -56.055140 -1.129892 2025-01-01 00:00:04\n"
]
}
],
"source": [
"import pandas as pd\n",
"import numpy as np\n",
"\n",
"# Set random seed for reproducibility\n",
"rng = np.random.default_rng(42)\n",
"\n",
"# Generate random walks starting at 0\n",
"counter = np.zeros(300)\n",
"rollout = np.zeros(300)\n",
"\n",
"# Generate random steps between -1 and 1\n",
"counter_steps = rng.uniform(-1, 1, 299)\n",
"rollout_steps = rng.uniform(-1, 1, 299)\n",
"\n",
"print(counter_steps)\n",
"print(rollout_steps)\n",
"\n",
"# Calculate cumulative sum and scale to -100 to 100 range\n",
"for i in range(1, 300):\n",
" counter[i] = counter[i-1] + counter_steps[i-1]\n",
" rollout[i] = rollout[i-1] + rollout_steps[i-1]\n",
"\n",
"# normalize values between -100 and 100, lowest value is -100, highest value is 100\n",
"counter = (counter - min(counter)) / (max(counter) - min(counter)) * 200 - 100\n",
"rollout = (rollout - min(rollout)) / (max(rollout) - min(rollout)) * 200 - 100\n",
"\n",
"# Create DataFrame\n",
"df = pd.DataFrame({\n",
" 'Counter': counter,\n",
" 'Rollout': rollout,\n",
" 'CounterPlusRollout': counter + rollout\n",
"})\n",
"\n",
"# add a timestamp column\n",
"df['Timestamp'] = pd.date_range(start='2025-01-01', periods=300, freq='1s')\n",
"\n",
"# Save to CSV\n",
"df.to_csv('random_walks.csv', index=False)\n",
"\n",
"# Display first few rows\n",
"print(df.head())\n"
]
},
{
"cell_type": "code",
"execution_count": 1,
"id": "c61be7ab",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[ 0.5479121 -0.12224312 0.71719584 0.39473606 -0.8116453 0.9512447\n",
" 0.5222794 0.57212861 -0.74377273 -0.09922812 -0.25840395 0.85352998\n",
" 0.28773024 0.64552323 -0.1131716 -0.54552256 0.10916957 -0.87236549\n",
" 0.65526234 0.2633288 0.51617548 -0.29094806 0.94139605 0.78624224\n",
" 0.55676699 -0.61072258 -0.06655799 -0.91239247 -0.69142102 0.36609791\n",
" 0.48952431 0.93501946 -0.34834928 -0.25908059 -0.06088838 -0.62105728\n",
" -0.74015699 -0.04859015 -0.5461813 0.33962799 -0.12569616 0.66535639\n",
" 0.4005302 -0.37526672 0.6645196 0.60952871 -0.22504324 -0.42334379\n",
" 0.36499101]\n",
"[-0.72049503 -0.6001836 -0.98527546 0.57384876 0.32970171 0.41033076\n",
" 0.56145806 -0.08216845 0.13748239 -0.720406 -0.77093985 0.33680592\n",
" -0.05780759 0.13047221 0.52999771 0.26943664 0.1071588 0.11841432\n",
" -0.3920998 -0.93836433 -0.12656522 -0.57083065 -0.18294271 0.70680615\n",
" -0.53212103 -0.88339452 -0.43723222 -0.41281248 0.32383303 0.1140643\n",
" 0.56779642 0.32862708 -0.18722628 0.62804077 -0.66605416 -0.95457585\n",
" -0.81990428 0.4447187 -0.07624554 -0.67745644 0.00208955 -0.69537579\n",
" 0.39264075 -0.10768745 -0.23795755 -0.39697582 0.26056519 -0.27637478\n",
" -0.82470016]\n",
" Counter Rollout Square Timestamp\n",
"0 -100.000000 100.000000 -37.646304 2025-01-01 00:00:00\n",
"1 -79.942159 79.589040 -72.994086 2025-01-01 00:00:05\n",
"2 -84.417207 62.586392 -30.252436 2025-01-01 00:00:10\n",
"3 -58.162265 34.674447 7.555532 2025-01-01 00:00:15\n",
"4 -43.711857 50.931053 26.035410 2025-01-01 00:00:20\n"
]
}
],
"source": [
"import pandas as pd\n",
"import numpy as np\n",
"\n",
"# Set random seed for reproducibility\n",
"rng = np.random.default_rng(42)\n",
"\n",
"size = 50\n",
"\n",
"# Generate random walks starting at 0\n",
"counter = np.zeros(size)\n",
"rollout = np.zeros(size)\n",
"square = np.zeros(size)\n",
"\n",
"# Generate random steps between -1 and 1\n",
"counter_steps = rng.uniform(-1, 1, size-1)\n",
"rollout_steps = rng.uniform(-1, 1, size-1)\n",
"square_steps = rng.uniform(-1, 1, size-1)\n",
"\n",
"print(counter_steps)\n",
"print(rollout_steps)\n",
"\n",
"# Calculate cumulative sum and scale to -100 to 100 range\n",
"for i in range(1, size):\n",
" counter[i] = counter[i-1] + counter_steps[i-1]\n",
" rollout[i] = rollout[i-1] + rollout_steps[i-1]\n",
" square[i] = square[i-1] + square_steps[i-1]\n",
"\n",
"# normalize values between -100 and 100, lowest value is -100, highest value is 100\n",
"counter = (counter - min(counter)) / (max(counter) - min(counter)) * 200 - 100\n",
"rollout = (rollout - min(rollout)) / (max(rollout) - min(rollout)) * 200 - 100\n",
"square = (square - min(square)) / (max(square) - min(square)) * 200 - 100\n",
"\n",
"# Create DataFrame\n",
"df = pd.DataFrame({\n",
" 'Counter': counter,\n",
" 'Rollout': rollout,\n",
" 'Square': square\n",
"})\n",
"\n",
"# add a timestamp column\n",
"df['Timestamp'] = pd.date_range(start='2025-01-01', periods=size, freq='5s')\n",
"\n",
"# Save to CSV\n",
"df.to_csv('random_walks_demo.csv', index=False)\n",
"\n",
"# Display first few rows\n",
"print(df.head())\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "e7c8eeb1",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" a | \n",
" b | \n",
"
\n",
" \n",
" | timestamp | \n",
" | \n",
" | \n",
"
\n",
" \n",
" \n",
" \n",
" | 2025-01-01 | \n",
" 1 | \n",
" 4 | \n",
"
\n",
" \n",
" | 2025-01-02 | \n",
" 2 | \n",
" 5 | \n",
"
\n",
" \n",
" | 2025-01-03 | \n",
" 3 | \n",
" 6 | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" a b\n",
"timestamp \n",
"2025-01-01 1 4\n",
"2025-01-02 2 5\n",
"2025-01-03 3 6"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"True\n"
]
},
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" a | \n",
" b | \n",
"
\n",
" \n",
" | timestamp | \n",
" | \n",
" | \n",
"
\n",
" \n",
" \n",
" \n",
" | 2025-01-03 | \n",
" 3 | \n",
" 6 | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" a b\n",
"timestamp \n",
"2025-01-03 3 6"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"3\n",
"1\n"
]
}
],
"source": [
"from pandas import DataFrame\n",
"\n",
"a = DataFrame({\n",
" \"a\": {\"2025-01-01\": 1, \"2025-01-02\": 2, \"2025-01-03\": 3},\n",
" \"b\": {\"2025-01-01\": 4, \"2025-01-02\": 5, \"2025-01-03\": 6},\n",
"})\n",
"\n",
"a.index.name = \"timestamp\"\n",
"\n",
"display(a)\n",
"\n",
"print(\"a\" in a.columns)\n",
"\n",
"b = a.tail(1)\n",
"\n",
"display(b)\n",
"\n",
"print(len(a))\n",
"print(len(b))\n",
"print(b.size)\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "f3374174",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"\n",
"All elements in index are of the same type\n"
]
}
],
"source": [
"from pandas import DataFrame\n",
"\n",
"data = DataFrame({\n",
" \"a\": {\"2025-01-01\": 1, \"2025-01-02\": 2, \"2025-01-03\": 3},\n",
" \"b\": {\"2025-01-01\": 4, \"2025-01-02\": 5, \"2025-01-03\": 6},\n",
"})\n",
"\n",
"index = data.index\n",
"\n",
"# Get type of first element of index\n",
"index_type = type(index[0])\n",
"\n",
"print(index_type)\n",
"\n",
"# Check if all in index are of the same type\n",
"if all(isinstance(i, index_type) for i in index):\n",
" print(\"All elements in index are of the same type\")\n",
"else:\n",
" print(\"Elements in index are of different types\")\n",
"\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "40e72c60",
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": 6,
"id": "1fbb3788",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"test\n"
]
}
],
"source": [
"from unittest.mock import MagicMock\n",
"from asyncua.ua.uaerrors import BadAlreadyExists\n",
"\n",
"mock1 = MagicMock(\n",
" side_effect = Exception(\"test\")\n",
")\n",
"\n",
"mock2 = MagicMock(\n",
" side_effect = BadAlreadyExists(\"test\")\n",
")\n",
"\n",
"try:\n",
" mock1()\n",
"except ValueError as e:\n",
" try:\n",
" mock2()\n",
" except BadAlreadyExists as e:\n",
" print(e)\n",
"except Exception as e:\n",
" print(e)\n"
]
},
{
"cell_type": "code",
"execution_count": 7,
"id": "771ab4ee",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" a | \n",
" b | \n",
" target | \n",
" prediction | \n",
" timestamp | \n",
"
\n",
" \n",
" \n",
" \n",
" | 0 | \n",
" 1 | \n",
" 4 | \n",
" 7 | \n",
" 1 | \n",
" 2025-01-01 | \n",
"
\n",
" \n",
" | 1 | \n",
" 2 | \n",
" 5 | \n",
" 8 | \n",
" 2 | \n",
" 2025-01-02 | \n",
"
\n",
" \n",
" | 2 | \n",
" 3 | \n",
" 6 | \n",
" 9 | \n",
" 3 | \n",
" 2025-01-03 | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" a b target prediction timestamp\n",
"0 1 4 7 1 2025-01-01\n",
"1 2 5 8 2 2025-01-02\n",
"2 3 6 9 3 2025-01-03"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"from pandas import DataFrame, merge\n",
"\n",
"retrain_dataset = DataFrame({\n",
" 'a': {'2025-01-01': 1, '2025-01-02': 2, '2025-01-03': 3},\n",
" 'b': {'2025-01-01': 4, '2025-01-02': 5, '2025-01-03': 6},\n",
" 'c': {'2025-01-01': 7, '2025-01-02': 8, '2025-01-03': 9},\n",
"})\n",
"\n",
"prediction_data = DataFrame({\n",
" 'prediction': {'1': 1, '2': 2, '3': 3},\n",
"})\n",
"\n",
"prediction_data.index = retrain_dataset.index\n",
"\n",
"prediction_data = merge(\n",
" retrain_dataset, prediction_data, left_index=True, right_index=True, how='left')\n",
"\n",
"prediction_data.rename(columns={'c': 'target'}, inplace=True)\n",
"\n",
"prediction_data['timestamp'] = prediction_data.index\n",
"\n",
"prediction_data.reset_index(drop=True, inplace=True)\n",
"\n",
"display(prediction_data)"
]
},
{
"cell_type": "code",
"execution_count": 4,
"id": "486b95b3",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[]"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" a | \n",
" b | \n",
"
\n",
" \n",
" \n",
" \n",
" | 2025-01-01 | \n",
" 1 | \n",
" 4 | \n",
"
\n",
" \n",
" | 2025-01-02 | \n",
" 2 | \n",
" 5 | \n",
"
\n",
" \n",
" | 2025-01-03 | \n",
" 3 | \n",
" 6 | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" a b\n",
"2025-01-01 1 4\n",
"2025-01-02 2 5\n",
"2025-01-03 3 6"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"{'index': ['2025-01-01', '2025-01-02', '2025-01-03'],\n",
" 'columns': ['a', 'b'],\n",
" 'data': [[1, 4], [2, 5], [3, 6]]}"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" 0 | \n",
" 1 | \n",
" 2 | \n",
"
\n",
" \n",
" \n",
" \n",
" | index | \n",
" 2025-01-01 | \n",
" 2025-01-02 | \n",
" 2025-01-03 | \n",
"
\n",
" \n",
" | columns | \n",
" a | \n",
" b | \n",
" None | \n",
"
\n",
" \n",
" | data | \n",
" [1, 4] | \n",
" [2, 5] | \n",
" [3, 6] | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" 0 1 2\n",
"index 2025-01-01 2025-01-02 2025-01-03\n",
"columns a b None\n",
"data [1, 4] [2, 5] [3, 6]"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"3"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"from pandas import DataFrame\n",
"\n",
"data = DataFrame()\n",
"\n",
"display(data.to_dict(orient='records'))\n",
"\n",
"data = DataFrame({\n",
" \"a\": {\"2025-01-01\": 1, \"2025-01-02\": 2, \"2025-01-03\": 3},\n",
" \"b\": {\"2025-01-01\": 4, \"2025-01-02\": 5, \"2025-01-03\": 6},\n",
"})\n",
"\n",
"display(data)\n",
"\n",
"data_list = data.to_dict('split')\n",
"\n",
"display(data_list)\n",
"\n",
"data_rec = DataFrame.from_dict(data_list, orient='index')\n",
"\n",
"display(data_rec)\n",
"\n",
"data.shape[0]"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "venv",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.11.13"
}
},
"nbformat": 4,
"nbformat_minor": 5
}