{"metadata":{"kernelspec":{"display_name":"Python 3","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.10.14"},"kaggle":{"accelerator":"none","dataSources":[{"sourceId":84493,"databundleVersionId":9871156,"sourceType":"competition"}],"dockerImageVersionId":30786,"isInternetEnabled":false,"language":"python","sourceType":"notebook","isGpuEnabled":false},"papermill":{"default_parameters":{},"duration":4.669361,"end_time":"2024-10-10T13:05:46.686069","environment_variables":{},"exception":null,"input_path":"__notebook__.ipynb","output_path":"__notebook__.ipynb","parameters":{},"start_time":"2024-10-10T13:05:42.016708","version":"2.6.0"}},"nbformat_minor":4,"nbformat":4,"cells":[{"cell_type":"code","source":"import polars as pl\nimport numpy as np\nfrom typing import Optional\n\ndef predict(test: pl.DataFrame, lags: Optional[pl.DataFrame] = None) -> pl.DataFrame:\n    \"\"\"\n    Simple prediction function for time series competition.\n    \n    Args:\n        test (pl.DataFrame): Current test data\n        lags (pl.DataFrame, optional): Historical lag data\n    \n    Returns:\n        pl.DataFrame: Predictions for responder_6\n    \"\"\"\n    # Ensure required columns exist\n    required_columns = ['row_id', 'date_id', 'time_id', 'symbol_id']\n    for col in required_columns:\n        if col not in test.columns:\n            raise ValueError(f\"Missing required column: {col}\")\n    \n    # If lags exist, compute mean of responder_6\n    if lags is not None and 'responder_6' in lags.columns:\n        historical_mean = lags['responder_6'].mean()\n    else:\n        historical_mean = 0.0\n    \n    # Generate predictions\n    predictions = test.with_columns([\n        pl.lit(historical_mean + np.random.normal(0, 0.1)).alias('responder_6')\n    ])\n    \n    return predictions.select(['row_id', 'responder_6'])\n\n# Placeholder for Kaggle's inference server\nclass InferenceServer:\n    def serve(self):\n        pass\n\n# Main execution\ninference_server = InferenceServer()","metadata":{"_cell_guid":"b1076dfc-b9ad-4769-8c92-a6c4dae69d19","_uuid":"8f2839f25d086af736a60e9eeb907d3b93b6e0e5","execution":{"iopub.status.busy":"2024-11-18T13:07:36.857211Z","iopub.execute_input":"2024-11-18T13:07:36.857692Z","iopub.status.idle":"2024-11-18T13:07:36.887059Z","shell.execute_reply.started":"2024-11-18T13:07:36.857641Z","shell.execute_reply":"2024-11-18T13:07:36.885671Z"},"papermill":{"duration":0.308219,"end_time":"2024-10-10T13:05:46.163573","exception":false,"start_time":"2024-10-10T13:05:45.855354","status":"completed"},"tags":[],"trusted":true},"outputs":[],"execution_count":null}]}