《学习小组Day5笔记–Frank》 – Python量化投资

《学习小组Day5笔记–Frank》

R 软件数据简单处理入门 (主要内容引自生信星球)


简单数据操作

提取数据框中某两列做散点图

创建数据框

s<-data.frame(case=paste("S", c(1:50)), values=runif(50))
plot做散点图
plot(s\$case, s\$values)


S散点图.png

常用散点图函数与命令

plot()
  • plot(x =s$case,y = s$values)
  • plot(s$case,s$values)
  • plot(s$values~s$case) # R公式写法
  • plot(values~case,data = s) # R公式写法
ggplot2下的qplot()
  • qplot(x =s$case,y = s$values)
  • qplot(s$case,s$values)
  • qplot(values, case, data=s)
ggplot2下的ggplot()

在函数后通过“+”可以直接增加图层

ggplot(data =s,aes(x = cases,y = values))+
  geom_point()

ggplot(s,aes(cases,values))+
  geom_point()

增加回归线 (默认带置信区间)

ggplot(s,aes(cases,values))+
  geom_point()+
  geom_smooth()

改为绘制一条直线趋势线(增加method语句(默认是loess,如前)

ggplot(s,aes(cases,values))+
  geom_point()+
  geom_smooth(method="lm")

取消置信区间

ggplot(s,aes(cases,values))+
  geom_point()+
  geom_smooth(method="lm", se=FALSE)

修改横纵轴标题(增加labs()函数)

ggplot(s,aes(cases,values))+
  geom_point()+
  geom_smooth(method="lm", se=FALSE)+
  labs(x="横轴“,y="纵轴”)

修改点图颜色(在point()中增加colour()语句)

ggplot(s,aes(cases,values))+
  geom_point(colour="red")+
  geom_smooth(method="lm", se=FALSE)+
  labs(x="横轴“,y="纵轴”)

修改线条颜色(在smooth()中增加colour语句)

ggplot(s,aes(cases,values))+
  geom_point(colour="red")+
  geom_smooth(method="lm", se=FALSE, colour="black")+
  labs(x="横轴“,y="纵轴”)

with()循环简化作图命令。{}内的命令均针对with()内的对象进行操作,可多种操作。

with(s,{
  plot(case,values)
  x<<-summary(values)
  })

横坐标S1-S50未按顺序排列

解决方案:把x轴对应的那一列变成因子,按照想要的顺序排序 :

s$case<-factor(s$case, levels=paste("S", c(1:50)), ordered=TRUE)


更改横坐标排序后的散点图.png

横坐标列的排序可以通过table()进行查看:

t<-data.frame(case=paste("T", c(1:50)), values=runif(50))
table(t$case)


横坐标排序查看.png

与作图结果一致:
with(t,{plot(case,values)})

T排序与作图结果.png

采用factor()把x轴对应的那一列变成因子,按照想要的顺序排序 :

t$case<-factor(t$case, levels=paste("T", c(1:50)), ordered=TRUE)
table(t$case)


更改横坐标排序后查看横坐标列.png

作图后,证实一致:
plot(values~case,data = t)

证实图.png

https://www.jianshu.com/p/bcfd21b50de0

「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
0 条回复 A 作者 M 管理员
    所有的伟大,都源于一个勇敢的开始!
欢迎您,新朋友,感谢参与互动!欢迎您 {{author}},您在本站有{{commentsCount}}条评论