# -*- coding: utf-8 -*-
"""
Created on Mon Nov 23 11:01:18 2020
@author: Administrator
"""
#导入库
import pandas as pd
import numpy as np
#导入数据
data=pd.read_excel("D:\\360安全浏览器下载\\线性回归1119.xlsx")
#让时间显示为正确格式
#excel中以1900年1月1日为基准线记录时间
#python中以1970年1月1日为基准线记录时间
#进行时间转化的时候需要将从excel中导来的数值减去25539,再用pd.timestamp将其转换
data["时间"]=data["时间"].map(lambda x:x-25569)
data["时间"]=data["时间"].map(lambda x:pd.Timestamp(x,unit="D"))
data["年份"]=data["时间"].dt.year
#准备训练集(2018年数据)和测试集数据(2019年数据)
xnamelist=["沪深300",
"stock5","stock12",
"中国货币供应量M2(亿元)",
"M2_12",
"居民消费价格指数(上月=100)",
"居住类居民消费价格指数(上月=100)",
"品住宅销售价格指数(上月=100)",
"二手住宅销售价格指数(上月=100)",
"银行间同业拆借加权平均利率_当期%",
"rate",
"美元兑人民币平均汇率_当期(人民币/美元)"
]
X_2018=data[data["年份"]==2018].loc[:,xnamelist]
#查看2018年有多少行数据,可以看到2018年只有12行数据,你的变量x个数却那么多,这样估计出来的回归系数是不可信的。
X_2018.shape