博客
关于我
python实战之一元线性回归(数理统计)
阅读量:254 次
发布时间:2019-03-01

本文共 1539 字,大约阅读时间需要 5 分钟。

1.数据分析要求

数据集展示了m城市人口初次来m城市的时间、迁离m城市的时间、现在的收入。现假设外来人口在m城市的居住时间影响他们的收入。试加以分析和证明。

(1)展示数据集的结构。
(2)显示前10条数据记录。
(3)将变量名重新命名为英文变量名。不能使用Excel处理数据。
(4)计算自变量的最小值、中位数、均值、最大值和标准差,要求保留2位小数。注意:因变量转换为对数。
(5)计算因变量(转换为对数值)和自变量的相关系数,要求保留2位小数。
(6)绘制因变量与自变量的散点图。
(7)利用一元线性回归模型对因变量与自变量的关系进行拟合,并进行假设检验。
(8)分别计算因变量的均值、标准差、偏度和峰度,判断因变量的样本值是否符合正态分布。

大致看一下数据集

在这里插入图片描述

2.利用pandas和numpy进行分析

import numpy as npimport pandas as pdfrom matplotlib import pyplot as pltfrom statsmodels.formula.api import ols  #数理统计包file_path="/home/cc1997/Desktop/huleihomework/data01.csv"mydata=pd.read_csv(file_path,encoding="gbk")#print(mydata.head(10))#删除空列mydata=mydata.dropna(axis=1)#重命名names=["comeyear","comemon","outyear","outmon","income"]mydata.columns=names#计算居住时间times=mydata["outyear"]*12+mydata["outmon"]-mydata["comeyear"]*12-mydata["comemon"]#如果你的数据只有一列,在指定column时,需要加个中括号times=pd.DataFrame(times,columns=["times"])print(times.head(10),type(times))mydata=mydata.join(times)#取对数mydata["income"]=mydata["income"].apply(np.log)print(mydata.head(10))#求自变量的最大值最小值保留两位小数print("最大值:",mydata["times"].max())print("最小值:",mydata["times"].min())print("平均值:",round(mydata["times"].mean(),2))print("中位数:",mydata["times"].median())#计算因变量和自变量的相关系数print("相关系数",mydata["times"].corr(mydata["income"]))#画图plt.plot(mydata["times"],mydata["income"],'o')plt.xlabel("居住时间")plt.ylabel("对数收入")plt.show()#线性回归和参数估计times=mydata["times"]logincome=mydata["income"]model=ols("logincome~times",data=mydata).fit()print(model.summary())#计算自变量偏度和峰度print("偏度:",logincome.skew())#偏度print("峰度:",logincome.kurt())#峰度

转载地址:http://ljpv.baihongyu.com/

你可能感兴趣的文章
Netty 解决TCP粘包/半包使用
查看>>
Netty 调用,效率这么低还用啥?
查看>>
Netty 高性能架构设计
查看>>
Netty+Protostuff实现单机压测秒级接收35万个对象实践经验分享
查看>>
Netty+SpringBoot+FastDFS+Html5实现聊天App详解(一)
查看>>
netty--helloword程序
查看>>
netty2---服务端和客户端
查看>>
【Flink】Flink 2023 Flink易用性和稳定性在Shopee的优化-视频笔记
查看>>
Netty5.x 和3.x、4.x的区别及注意事项(官方翻译)
查看>>
netty——bytebuf的创建、内存分配与池化、组成、扩容规则、写入读取、内存回收、零拷贝
查看>>
netty——Channl的常用方法、ChannelFuture、CloseFuture
查看>>
netty——EventLoop概念、处理普通任务定时任务、处理io事件、EventLoopGroup
查看>>
netty——Future和Promise的使用 线程间的通信
查看>>
netty——Handler和pipeline
查看>>
Vue输出HTML
查看>>
netty——黏包半包的解决方案、滑动窗口的概念
查看>>
Netty中Http客户端、服务端的编解码器
查看>>
Netty中使用WebSocket实现服务端与客户端的长连接通信发送消息
查看>>
Netty中实现多客户端连接与通信-以实现聊天室群聊功能为例(附代码下载)
查看>>
Netty中的组件是怎么交互的?
查看>>