一、背景
数据集展示了X市外来人口的相关数据情况,包括出生年月、收入、初次来到X市的日期、迁离X市的日期和现在的朋友数量。现假设外来人口的年龄、在X市的居住时间和朋友数量影响他们的收入。试加以证明。
二、要求和代码
一、分析收入的影响因素
#1
#展示数据集的结构
data2 <- read.csv(file="F:/hxpRlanguage/homework2.csv",header=TRUE,sep=",")
str(data2) #显示的结果有一列是多余的,需要删除
data2 <- data2[,1:9]
str(data2) #删完之后的显示效果是正常的没有多余列
#2
#显示前10条数据记录
data2[1:10,]
#3
#将变量名重新命名为英文变量名
cnames <- c("number","birthyear","birthmonth","salary","inyear","inmonth","outyear","outmonth","friends")
colnames(data2) <- cnames
View(data2)
#4
#查找数据集中居住时间小于等于0的异常记录,若存在,从数据集中删除这些异常记录
x2 <- ((data2$outyear-data2$inyear)*12+(data2$outmonth-data2$inmonth))
#View(x2) #①先算出居住时间
data3 <- cbind(data2,x2)
#View(data3) #②使用cbind函数把x2和原数据拼成新的矩阵,方便之后删除异常数据列,并且是127条
list <- which(x2<=0)
data3 <- data3[-list,]
View(data3) #删除异常数据后是125条数据
#5
#展示数据集中因变量与自变量的均值、最小值、中位数、最大值和标准差,要求保留2位小数。
library(lubridate)
date<-Sys.Date() #返回系统当前的时间
nowyear<-year(date) #提取年份
nowmonth<-month(date) #提取月份
#View(date) #查看现在的日期
#View(month(date)) #查看现在日期中的月份
x1 <- array(1:nrow(data3),dim=c(nrow(data3),1))
for(i in c(1:nrow(data3)) ){
if