{"metadata":{"kernelspec":{"language":"python","display_name":"Python 3","name":"python3"},"language_info":{"name":"python","version":"3.12.13","mimetype":"text/x-python","codemirror_mode":{"name":"ipython","version":3},"pygments_lexer":"ipython3","nbconvert_exporter":"python","file_extension":".py"},"kaggle":{"accelerator":"none","dataSources":[],"dockerImageVersionId":28755,"isInternetEnabled":false,"language":"python","sourceType":"notebook","isGpuEnabled":false}},"nbformat_minor":4,"nbformat":4,"cells":[{"cell_type":"code","source":"# This Python 3 environment comes with many helpful analytics libraries installed\n# It is defined by the kaggle/python Docker image: https://github.com/kaggle/docker-python\n# For example, here's several helpful packages to load\n\nimport numpy as np # linear algebra\nimport pandas as pd # data processing, CSV file I/O (e.g. pd.read_csv)\n\n# Input data files are available in the read-only \"../input/\" directory\n# For example, running this (by clicking run or pressing Shift+Enter) will list all files under the input directory\n\nimport os\nfor dirname, _, filenames in os.walk('/kaggle/input'):\n    for filename in filenames:\n        print(os.path.join(dirname, filename))\n\n# You can write up to 20GB to the current directory (/kaggle/working/) that gets preserved as output when you create a version using \"Save & Run All\" \n# You can also write temporary files to /kaggle/temp/, but they won't be saved outside of the current session\n\n# Use the kagglehub client library to attach Kaggle resources like competitions, datasets, and models to your session\n# Learn more about kagglehub: https://github.com/Kaggle/kagglehub/blob/main/README.md\n\nimport kagglehub\n# kagglehub.dataset_download('<owner>/<dataset-slug>')","metadata":{"_uuid":"8f2839f25d086af736a60e9eeb907d3b93b6e0e5","_cell_guid":"b1076dfc-b9ad-4769-8c92-a6c4dae69d19","trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:35:44.940372Z","iopub.execute_input":"2026-08-22T14:35:44.941176Z","iopub.status.idle":"2026-08-22T14:35:46.382819Z","shell.execute_reply.started":"2026-08-22T14:35:44.941126Z","shell.execute_reply":"2026-08-22T14:35:46.381848Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"df = pd.read_csv('/kaggle/input/competitions/digit-recognizer/train.csv')","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:35:46.384418Z","iopub.execute_input":"2026-08-22T14:35:46.385228Z","iopub.status.idle":"2026-08-22T14:35:48.943136Z","shell.execute_reply.started":"2026-08-22T14:35:46.385110Z","shell.execute_reply":"2026-08-22T14:35:48.942178Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"df.shape","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:35:48.944379Z","iopub.execute_input":"2026-08-22T14:35:48.944726Z","iopub.status.idle":"2026-08-22T14:35:48.953057Z","shell.execute_reply.started":"2026-08-22T14:35:48.944689Z","shell.execute_reply":"2026-08-22T14:35:48.952188Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"df.head()","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:35:48.954280Z","iopub.execute_input":"2026-08-22T14:35:48.954714Z","iopub.status.idle":"2026-08-22T14:35:48.998461Z","shell.execute_reply.started":"2026-08-22T14:35:48.954678Z","shell.execute_reply":"2026-08-22T14:35:48.997446Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"df.sample()","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:35:49.001497Z","iopub.execute_input":"2026-08-22T14:35:49.001873Z","iopub.status.idle":"2026-08-22T14:35:49.025151Z","shell.execute_reply.started":"2026-08-22T14:35:49.001835Z","shell.execute_reply":"2026-08-22T14:35:49.024261Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"import matplotlib.pyplot as plt\nimport seaborn as sns ","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:35:49.026567Z","iopub.execute_input":"2026-08-22T14:35:49.027018Z","iopub.status.idle":"2026-08-22T14:35:50.148575Z","shell.execute_reply.started":"2026-08-22T14:35:49.026982Z","shell.execute_reply":"2026-08-22T14:35:50.147806Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"# plt.imshow() -> this will show the image\nplt.imshow(df.iloc[20122,1:].values.reshape(28,28))","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:35:50.149932Z","iopub.execute_input":"2026-08-22T14:35:50.150543Z","iopub.status.idle":"2026-08-22T14:35:50.353340Z","shell.execute_reply.started":"2026-08-22T14:35:50.150514Z","shell.execute_reply":"2026-08-22T14:35:50.352561Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"df.head()","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:35:50.354377Z","iopub.execute_input":"2026-08-22T14:35:50.354712Z","iopub.status.idle":"2026-08-22T14:35:50.369596Z","shell.execute_reply.started":"2026-08-22T14:35:50.354687Z","shell.execute_reply":"2026-08-22T14:35:50.368840Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"# now extranct the data\nX = df.iloc[:, 1:]\ny = df.iloc[:, 0]","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:35:50.370799Z","iopub.execute_input":"2026-08-22T14:35:50.371272Z","iopub.status.idle":"2026-08-22T14:35:50.382364Z","shell.execute_reply.started":"2026-08-22T14:35:50.371243Z","shell.execute_reply":"2026-08-22T14:35:50.381499Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"X.head()","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:35:50.383524Z","iopub.execute_input":"2026-08-22T14:35:50.383896Z","iopub.status.idle":"2026-08-22T14:35:50.407492Z","shell.execute_reply.started":"2026-08-22T14:35:50.383859Z","shell.execute_reply":"2026-08-22T14:35:50.406598Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"y.head()","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:35:50.408642Z","iopub.execute_input":"2026-08-22T14:35:50.408983Z","iopub.status.idle":"2026-08-22T14:35:50.421956Z","shell.execute_reply.started":"2026-08-22T14:35:50.408945Z","shell.execute_reply":"2026-08-22T14:35:50.421043Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"from sklearn.model_selection import train_test_split\n\nX_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:35:50.423129Z","iopub.execute_input":"2026-08-22T14:35:50.423506Z","iopub.status.idle":"2026-08-22T14:35:50.778997Z","shell.execute_reply.started":"2026-08-22T14:35:50.423479Z","shell.execute_reply":"2026-08-22T14:35:50.778305Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"X_train.shape","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:35:50.779955Z","iopub.execute_input":"2026-08-22T14:35:50.780431Z","iopub.status.idle":"2026-08-22T14:35:50.786165Z","shell.execute_reply.started":"2026-08-22T14:35:50.780403Z","shell.execute_reply":"2026-08-22T14:35:50.785439Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"# Now applying the ALGORITHM\nfrom sklearn.neighbors import KNeighborsClassifier","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:35:50.789905Z","iopub.execute_input":"2026-08-22T14:35:50.790256Z","iopub.status.idle":"2026-08-22T14:35:51.032884Z","shell.execute_reply.started":"2026-08-22T14:35:50.790229Z","shell.execute_reply":"2026-08-22T14:35:51.031999Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"knn = KNeighborsClassifier()","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:35:51.034911Z","iopub.execute_input":"2026-08-22T14:35:51.035351Z","iopub.status.idle":"2026-08-22T14:35:51.038882Z","shell.execute_reply.started":"2026-08-22T14:35:51.035325Z","shell.execute_reply":"2026-08-22T14:35:51.038232Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"knn.fit(X_train, y_train)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:35:51.040014Z","iopub.execute_input":"2026-08-22T14:35:51.040473Z","iopub.status.idle":"2026-08-22T14:35:51.198486Z","shell.execute_reply.started":"2026-08-22T14:35:51.040437Z","shell.execute_reply":"2026-08-22T14:35:51.197646Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"# now doing the predection \ny_pred = knn.predict(X_test)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:35:51.199637Z","iopub.execute_input":"2026-08-22T14:35:51.200073Z","iopub.status.idle":"2026-08-22T14:36:02.435144Z","shell.execute_reply.started":"2026-08-22T14:35:51.200034Z","shell.execute_reply":"2026-08-22T14:36:02.434293Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"# Now check the accuracy score\nfrom sklearn.metrics import accuracy_score\naccuracy_score(y_pred, y_test)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:36:02.436296Z","iopub.execute_input":"2026-08-22T14:36:02.436659Z","iopub.status.idle":"2026-08-22T14:36:02.444675Z","shell.execute_reply.started":"2026-08-22T14:36:02.436623Z","shell.execute_reply":"2026-08-22T14:36:02.443700Z"}},"outputs":[],"execution_count":null},{"cell_type":"markdown","source":"# Now Find the same Accuracy Score Using PCA","metadata":{}},{"cell_type":"code","source":"# step 1 : Standarize your data \n\nfrom sklearn.preprocessing import StandardScaler\n\nscaler = StandardScaler()","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:36:02.445869Z","iopub.execute_input":"2026-08-22T14:36:02.446239Z","iopub.status.idle":"2026-08-22T14:36:02.460812Z","shell.execute_reply.started":"2026-08-22T14:36:02.446201Z","shell.execute_reply":"2026-08-22T14:36:02.459982Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"X_train = scaler.fit_transform(X_train)\nX_test = scaler.transform(X_test)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:36:02.461964Z","iopub.execute_input":"2026-08-22T14:36:02.462302Z","iopub.status.idle":"2026-08-22T14:36:02.909271Z","shell.execute_reply.started":"2026-08-22T14:36:02.462275Z","shell.execute_reply":"2026-08-22T14:36:02.908408Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"# Now Using PCA\nfrom sklearn.decomposition import PCA\npca = PCA(n_components = 100)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:36:02.910334Z","iopub.execute_input":"2026-08-22T14:36:02.910594Z","iopub.status.idle":"2026-08-22T14:36:02.914959Z","shell.execute_reply.started":"2026-08-22T14:36:02.910570Z","shell.execute_reply":"2026-08-22T14:36:02.914130Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"X_train_trf = pca.fit_transform(X_train)\nX_test_trf = pca.transform(X_test)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:36:02.916033Z","iopub.execute_input":"2026-08-22T14:36:02.916408Z","iopub.status.idle":"2026-08-22T14:36:03.754668Z","shell.execute_reply.started":"2026-08-22T14:36:02.916383Z","shell.execute_reply":"2026-08-22T14:36:03.753976Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"X_train_trf.shape, X_test_trf.shape","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:36:03.755592Z","iopub.execute_input":"2026-08-22T14:36:03.755872Z","iopub.status.idle":"2026-08-22T14:36:03.761033Z","shell.execute_reply.started":"2026-08-22T14:36:03.755843Z","shell.execute_reply":"2026-08-22T14:36:03.760467Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"knn = KNeighborsClassifier()","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:36:03.762241Z","iopub.execute_input":"2026-08-22T14:36:03.762976Z","iopub.status.idle":"2026-08-22T14:36:03.775373Z","shell.execute_reply.started":"2026-08-22T14:36:03.762943Z","shell.execute_reply":"2026-08-22T14:36:03.774726Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"knn.fit(X_train_trf, y_train)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:36:03.776177Z","iopub.execute_input":"2026-08-22T14:36:03.776447Z","iopub.status.idle":"2026-08-22T14:36:03.803325Z","shell.execute_reply.started":"2026-08-22T14:36:03.776416Z","shell.execute_reply":"2026-08-22T14:36:03.802699Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"y_pred_trf = knn.predict(X_test_trf)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:36:03.805437Z","iopub.execute_input":"2026-08-22T14:36:03.805738Z","iopub.status.idle":"2026-08-22T14:36:05.520751Z","shell.execute_reply.started":"2026-08-22T14:36:03.805707Z","shell.execute_reply":"2026-08-22T14:36:05.519936Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"# Now check the accuracy score\naccuracy_score(y_pred_trf, y_test)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:36:05.522999Z","iopub.execute_input":"2026-08-22T14:36:05.523320Z","iopub.status.idle":"2026-08-22T14:36:05.530870Z","shell.execute_reply.started":"2026-08-22T14:36:05.523294Z","shell.execute_reply":"2026-08-22T14:36:05.530024Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"for i in range(1, 785):\n    pca = PCA(n_components=i)\n\n    X_train_trf = pca.fit_transform(X_train)\n    X_test_trf = pca.transform(X_test)\n\n    knn = KNeighborsClassifier()\n    knn.fit(X_train_trf, y_train)\n\n    y_pred_trf = knn.predict(X_test_trf)\n\n    score = accuracy_score(y_test, y_pred_trf)\n\n    print(f'Accuracy Score is: {score}')\n\n    if score > 0.88:\n        print(f'88% accuracy achieved with {i} components')\n        break","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:36:05.531752Z","iopub.execute_input":"2026-08-22T14:36:05.532004Z","iopub.status.idle":"2026-08-22T14:36:14.517515Z","shell.execute_reply.started":"2026-08-22T14:36:05.531980Z","shell.execute_reply":"2026-08-22T14:36:14.516689Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"","metadata":{"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"markdown","source":"# Now See The Vizualization","metadata":{}},{"cell_type":"code","source":"# transforming to a 2D Vizulization\npca = PCA(n_components = 2)\nX_train_trf = pca.fit_transform(X_train)\nX_test_trf = pca.transform(X_test)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:36:14.518513Z","iopub.execute_input":"2026-08-22T14:36:14.518817Z","iopub.status.idle":"2026-08-22T14:36:15.187856Z","shell.execute_reply.started":"2026-08-22T14:36:14.518791Z","shell.execute_reply":"2026-08-22T14:36:15.186990Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"X_train_trf","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:36:15.188905Z","iopub.execute_input":"2026-08-22T14:36:15.189595Z","iopub.status.idle":"2026-08-22T14:36:15.195628Z","shell.execute_reply.started":"2026-08-22T14:36:15.189561Z","shell.execute_reply":"2026-08-22T14:36:15.194974Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"# Now plot the 2D Scatter plot using Plotly\nimport plotly.express as px\ny_train_trf = y_train.astype(str)\nfig = px.scatter(x = X_train_trf[:, 0],\n                 y = X_train_trf[:, 1],\n                 color = y_train_trf,\n                 color_discrete_sequence = px.colors.qualitative.G10\n                )\nfig.show()","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:36:15.197059Z","iopub.execute_input":"2026-08-22T14:36:15.197637Z","iopub.status.idle":"2026-08-22T14:36:20.061153Z","shell.execute_reply.started":"2026-08-22T14:36:15.197602Z","shell.execute_reply":"2026-08-22T14:36:20.060072Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"# transforming to a 3D Vizulization\npca = PCA(n_components = 3)\nX_train_trf = pca.fit_transform(X_train)\nX_test_trf = pca.transform(X_test)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:36:20.062798Z","iopub.execute_input":"2026-08-22T14:36:20.063180Z","iopub.status.idle":"2026-08-22T14:36:20.846349Z","shell.execute_reply.started":"2026-08-22T14:36:20.063140Z","shell.execute_reply":"2026-08-22T14:36:20.845450Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"X_train_trf","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:36:20.847366Z","iopub.execute_input":"2026-08-22T14:36:20.847666Z","iopub.status.idle":"2026-08-22T14:36:20.853767Z","shell.execute_reply.started":"2026-08-22T14:36:20.847634Z","shell.execute_reply":"2026-08-22T14:36:20.853167Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"# Now plot the 3D Scatter plot using Plotly\nimport plotly.express as px\ny_train_trf = y_train.astype(str)\nfig = px.scatter_3d(x = X_train_trf[:, 0],\n                 y = X_train_trf[:, 1],\n                 z = X_train_trf[:, 2],\n                 color = y_train_trf,\n                 color_discrete_sequence = px.colors.qualitative.G10\n                )\nfig.show()","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:36:20.854617Z","iopub.execute_input":"2026-08-22T14:36:20.854922Z","iopub.status.idle":"2026-08-22T14:36:21.039160Z","shell.execute_reply.started":"2026-08-22T14:36:20.854888Z","shell.execute_reply":"2026-08-22T14:36:21.038203Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"# Eigen Values\npca.explained_variance_ratio_","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:36:21.040344Z","iopub.execute_input":"2026-08-22T14:36:21.040627Z","iopub.status.idle":"2026-08-22T14:36:21.046847Z","shell.execute_reply.started":"2026-08-22T14:36:21.040601Z","shell.execute_reply":"2026-08-22T14:36:21.045966Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"# Eigen Vectors\npca.components_.shape","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:36:21.048327Z","iopub.execute_input":"2026-08-22T14:36:21.048743Z","iopub.status.idle":"2026-08-22T14:36:21.061008Z","shell.execute_reply.started":"2026-08-22T14:36:21.048710Z","shell.execute_reply":"2026-08-22T14:36:21.060187Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"pca = PCA(n_components = None)\nX_train_trf = pca.fit_transform(X_train)\nX_test_trf = pca.transform(X_test)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:36:32.550668Z","iopub.execute_input":"2026-08-22T14:36:32.551576Z","iopub.status.idle":"2026-08-22T14:36:34.154964Z","shell.execute_reply.started":"2026-08-22T14:36:32.551529Z","shell.execute_reply":"2026-08-22T14:36:34.154281Z"}},"outputs":[],"execution_count":null},{"cell_type":"markdown","source":"## Huma sirf utna components ko add kar ka total 90% ho jaya ","metadata":{}},{"cell_type":"code","source":"# Eigen Vectors\npca.explained_variance_ratio_","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:40:17.089285Z","iopub.execute_input":"2026-08-22T14:40:17.089610Z","iopub.status.idle":"2026-08-22T14:40:17.102432Z","shell.execute_reply.started":"2026-08-22T14:40:17.089583Z","shell.execute_reply":"2026-08-22T14:40:17.101625Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"pca.components_.shape","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:40:19.968782Z","iopub.execute_input":"2026-08-22T14:40:19.969448Z","iopub.status.idle":"2026-08-22T14:40:19.974905Z","shell.execute_reply.started":"2026-08-22T14:40:19.969414Z","shell.execute_reply":"2026-08-22T14:40:19.974077Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"np.cumsum(pca.explained_variance_ratio_)\n# np.cumsum() -> This will find the Cumulative sum","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:42:41.168183Z","iopub.execute_input":"2026-08-22T14:42:41.168831Z","iopub.status.idle":"2026-08-22T14:42:41.180199Z","shell.execute_reply.started":"2026-08-22T14:42:41.168798Z","shell.execute_reply":"2026-08-22T14:42:41.179448Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"plt.plot(np.cumsum(pca.explained_variance_ratio_))\n\n# 90% Variance will be show in around 200 to 250","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-08-22T14:43:49.358872Z","iopub.execute_input":"2026-08-22T14:43:49.359413Z","iopub.status.idle":"2026-08-22T14:43:49.508901Z","shell.execute_reply.started":"2026-08-22T14:43:49.359370Z","shell.execute_reply":"2026-08-22T14:43:49.508016Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"","metadata":{"trusted":true},"outputs":[],"execution_count":null}]}