# import data of movies
getwd()
[1] "/Users/cy"
setwd('studyspace/数据处理与可视化/')
raw_data <- read.csv("IBD.csv")
# Load packages
library('ggplot2') # visualization
library('ggthemes') # visualization
library('scales') # visualization
library('dplyr') # data manipulation
str(raw_data)
'data.frame':   36 obs. of  6 variables:
 $ Company                : Factor w/ 36 levels "Advo","AlaskaAirGp",..: 20 6 24 19 4 14 36 28 7 30 ...
 $ EPS.Rating             : int  6 14 17 18 21 21 28 31 46 49 ...
 $ Relative.Price.Strength: int  6 46 45 20 9 9 14 72 62 48 ...
 $ Relative.Strength      : Factor w/ 5 levels "A","B","C","D",..: 1 3 4 5 3 5 4 3 2 4 ...
 $ Sales.Margins.ROE      : Factor w/ 5 levels "A","B","C","D",..: 3 4 4 4 5 4 2 5 5 2 ...
 $ PE.Ratio               : int  7 51 15 29 25 19 7 15 20 12 ...
变量名 描述
Company 公司名
EPS.Rating 每股收益排名
Relative.Price.Strength 股价相对强度指标
Relative.Strength 相对强弱评级
Sales.Margins.ROE 净资产回报率
PE.Ratio 市盈率

备注:
1. 股价相对强度指标(RPS):比如,某个市场共有1000只股票,若某个股票的月涨幅在1000只股票中排名第100位,那么该股的RPS值就是:(1-100/1000)*100=90,RPS指标衡量了某一给定股票在过去一段时间,相对市场中其他股票的表现。市场内每只股票都被指定了1-100范围内的某一数值,100代表相对强度最高。 当RPS低于80时,可以说这个公司的RPS值是偏低的,没有买入该公司股票的必要。
2. 相对强弱指数(RSI)是通过比较一段时期内的平均收盘涨数和平均收盘跌数来分析市场买沽盘的意向和实力,从而作出未来市场的走势。
3. 一般认为,如果一家公司股票的市盈率过高,那么该股票的价格具有泡沫,价值被高估。

直接观察数据,得到以下信息:
1. 数据主要描述36家公司的运营状况。
2. EPS.Rating是个次序统计量,按排名从低到高。
3. PE.Ratio的值域在0-100之间。

接下来看箱线图:

boxplot(raw_data[,c(2:3, 6)])

直方图:

library(ggpubr)
载入需要的程辑包:magrittr
p1 = ggplot(raw_data, aes(x=Relative.Strength)) + geom_bar(stat="count")
p2 = ggplot(raw_data, aes(x=Sales.Margins.ROE)) + geom_bar(stat="count")
ggarrange(p1,p2,ncol=2,nrow=1,labels=c("A","B"))

通过直方图和箱线图可以看出:
1. 每股净收益率呈现出左偏分布,股价相对强度指标在0-80之间呈现正态分布,市盈率在0-40之间呈现正态分布,但有两个离群值。这两个离群点分别为:Bowater PLC–51,Gateway–42,显然这两个离群点都是偏高的,那么这两家公司的股票价格有被高估的风险。
2. Relative.Strength呈对称分布,Sales.Margins.ROE呈右偏分布。
3. Relative.Price.Strength(股价相对强度指标)分布在80%以下,说明该数据集中的公司暂时都没有买入其股票的必要。

根据变量相对强弱评级(Relative.Strength)来产生直方图

ggplot(raw_data,aes(x=EPS.Rating))+geom_histogram(binwidth = 10)+facet_wrap(~Relative.Strength)

Relative.Strength为B或E时,会出现一些EPS.Rating每股收益排名靠后的公司。

ggplot(raw_data,aes(x=Relative.Price.Strength))+geom_histogram(binwidth = 10)+facet_wrap(~Relative.Strength)

Relative.Strength(相对强弱评级)为E时,股价相对强度指标会偏低。

ggplot(raw_data,aes(x=PE.Ratio))+geom_histogram(binwidth = 10)+facet_wrap(~Relative.Strength)

根据Relative.Strength来产生散点图

g = ggplot(raw_data, aes(x = EPS.Rating, y = PE.Ratio))
g+geom_point(aes(color=Relative.Strength))+facet_wrap(~Relative.Strength)

根据Sales.Margins.ROE来产生散点图

g = ggplot(raw_data, aes(x = EPS.Rating, y = PE.Ratio))
g+geom_point(aes(color=Sales.Margins.ROE))+facet_wrap(~Sales.Margins.ROE)

相关性分析

require(GGally)
ggpairs(raw_data[,c(2,3,6)])

这些数据之间几乎没有线性相关性,且数据量太少,分析至此结束。

LS0tCnRpdGxlOiAiSUJEIgpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sKLS0tCgpgYGB7cn0KIyBpbXBvcnQgZGF0YSBvZiBtb3ZpZXMKc2V0d2QoJ3N0dWR5c3BhY2Uv5pWw5o2u5aSE55CG5LiO5Y+v6KeG5YyWLycpCnJhd19kYXRhIDwtIHJlYWQuY3N2KCJJQkQuY3N2IikKYGBgCmBgYHtyfQojIExvYWQgcGFja2FnZXMKbGlicmFyeSgnZ2dwbG90MicpICMgdmlzdWFsaXphdGlvbgpsaWJyYXJ5KCdnZ3RoZW1lcycpICMgdmlzdWFsaXphdGlvbgpsaWJyYXJ5KCdzY2FsZXMnKSAjIHZpc3VhbGl6YXRpb24KbGlicmFyeSgnZHBseXInKSAjIGRhdGEgbWFuaXB1bGF0aW9uCmBgYApgYGB7cn0Kc3RyKHJhd19kYXRhKQpgYGAKCuWPmOmHj+WQjXzmj4/ov7AKLS18Oi0tOnwtLToKQ29tcGFueXzlhazlj7jlkI0KRVBTLlJhdGluZ3zmr4/ogqHmlLbnm4rmjpLlkI0KUmVsYXRpdmUuUHJpY2UuU3RyZW5ndGh86IKh5Lu355u45a+55by65bqm5oyH5qCHClJlbGF0aXZlLlN0cmVuZ3RofOebuOWvueW8uuW8seivhOe6pwpTYWxlcy5NYXJnaW5zLlJPRXzlh4DotYTkuqflm57miqXnjocKUEUuUmF0aW985biC55uI546HCgrlpIfms6jvvJogIAoxLiDogqHku7fnm7jlr7nlvLrluqbmjIfmoIcoUlBTKe+8muavlOWmgu+8jOafkOS4quW4guWcuuWFseaciTEwMDDlj6rogqHnpajvvIzoi6Xmn5DkuKrogqHnpajnmoTmnIjmtqjluYXlnKgxMDAw5Y+q6IKh56Wo5Lit5o6S5ZCN56ysMTAw5L2N77yM6YKj5LmI6K+l6IKh55qEUlBT5YC85bCx5piv77yaKDEtMTAwLzEwMDApKjEwMD05MO+8jFJQU+aMh+agh+ihoemHj+S6huafkOS4gOe7meWumuiCoeelqOWcqOi/h+WOu+S4gOauteaXtumXtO+8jOebuOWvueW4guWcuuS4reWFtuS7luiCoeelqOeahOihqOeOsOOAguW4guWcuuWGheavj+WPquiCoeelqOmDveiiq+aMh+WumuS6hjEtMTAw6IyD5Zu05YaF55qE5p+Q5LiA5pWw5YC877yMMTAw5Luj6KGo55u45a+55by65bqm5pyA6auY44CCCioq5b2TUlBT5L2O5LqOODDml7bvvIzlj6/ku6Xor7Tov5nkuKrlhazlj7jnmoRSUFPlgLzmmK/lgY/kvY7nmoTvvIzmsqHmnInkubDlhaXor6Xlhazlj7jogqHnpajnmoTlv4XopoHjgIIqKiAgCjIuIOebuOWvueW8uuW8seaMh+aVsO+8iFJTSe+8ieaYr+mAmui/h+avlOi+g+S4gOauteaXtuacn+WGheeahOW5s+Wdh+aUtuebmOa2qOaVsOWSjOW5s+Wdh+aUtuebmOi3jOaVsOadpeWIhuaekOW4guWcuuS5sOayveebmOeahOaEj+WQkeWSjOWunuWKm++8jOS7juiAjOS9nOWHuuacquadpeW4guWcuueahOi1sOWKv+OAgiAgCjMuIOS4gOiIrOiupOS4uu+8jOWmguaenOS4gOWutuWFrOWPuOiCoeelqOeahOW4guebiOeOh+i/h+mrmO+8jOmCo+S5iOivpeiCoeelqOeahOS7t+agvOWFt+acieazoeayq++8jOS7t+WAvOiiq+mrmOS8sOOAgiAgCgrnm7TmjqXop4Llr5/mlbDmja7vvIzlvpfliLDku6XkuIvkv6Hmga/vvJogIAoxLiDmlbDmja7kuLvopoHmj4/ov7AzNuWutuWFrOWPuOeahOi/kOiQpeeKtuWGteOAgiAgCjIuIEVQUy5SYXRpbmfmmK/kuKrmrKHluo/nu5/orqHph4/vvIzmjInmjpLlkI3ku47kvY7liLDpq5jjgIIgIAozLiBQRS5SYXRpb+eahOWAvOWfn+WcqDAtMTAw5LmL6Ze044CCICAKCuaOpeS4i+adpeeci+eusee6v+Wbvu+8mgpgYGB7cn0KYm94cGxvdChyYXdfZGF0YVssYygyOjMsIDYpXSkKYGBgCuebtOaWueWbvu+8mgpgYGB7cn0KbGlicmFyeShnZ3B1YnIpCnAxID0gZ2dwbG90KHJhd19kYXRhLCBhZXMoeD1SZWxhdGl2ZS5TdHJlbmd0aCkpICsgZ2VvbV9iYXIoc3RhdD0iY291bnQiKQpwMiA9IGdncGxvdChyYXdfZGF0YSwgYWVzKHg9U2FsZXMuTWFyZ2lucy5ST0UpKSArIGdlb21fYmFyKHN0YXQ9ImNvdW50IikKZ2dhcnJhbmdlKHAxLHAyLG5jb2w9Mixucm93PTEsbGFiZWxzPWMoIkEiLCJCIikpCmBgYArpgJrov4fnm7Tmlrnlm77lkoznrrHnur/lm77lj6/ku6XnnIvlh7rvvJogIAoxLiDmr4/ogqHlh4DmlLbnm4rnjoflkYjnjrDlh7rlt6blgY/liIbluIPvvIzogqHku7fnm7jlr7nlvLrluqbmjIfmoIflnKgwLTgw5LmL6Ze05ZGI546w5q2j5oCB5YiG5biD77yM5biC55uI546H5ZyoMC00MOS5i+mXtOWRiOeOsOato+aAgeWIhuW4g++8jOS9huacieS4pOS4quemu+e+pOWAvOOAgioq6L+Z5Lik5Liq56a7576k54K55YiG5Yir5Li677yaQm93YXRlciBQTEMtLTUx77yMR2F0ZXdheS0tNDLvvIzmmL7nhLbov5nkuKTkuKrnprvnvqTngrnpg73mmK/lgY/pq5jnmoTvvIzpgqPkuYjov5nkuKTlrrblhazlj7jnmoTogqHnpajku7fmoLzmnInooqvpq5jkvLDnmoTpo47pmanjgIIqKiAgCjIuIFJlbGF0aXZlLlN0cmVuZ3Ro5ZGI5a+556ew5YiG5biD77yMU2FsZXMuTWFyZ2lucy5ST0XlkYjlj7PlgY/liIbluIPjgIIgIAozLiAqKlJlbGF0aXZlLlByaWNlLlN0cmVuZ3RoKOiCoeS7t+ebuOWvueW8uuW6puaMh+aghynliIbluIPlnKg4MCXku6XkuIvvvIzor7TmmI7or6XmlbDmja7pm4bkuK3nmoTlhazlj7jmmoLml7bpg73msqHmnInkubDlhaXlhbbogqHnpajnmoTlv4XopoHjgIIqKiAgCgrmoLnmja7lj5jph4/nm7jlr7nlvLrlvLHor4TnuqcoUmVsYXRpdmUuU3RyZW5ndGgp5p2l5Lqn55Sf55u05pa55Zu+CmBgYHtyfQpnZ3Bsb3QocmF3X2RhdGEsYWVzKHg9RVBTLlJhdGluZykpK2dlb21faGlzdG9ncmFtKGJpbndpZHRoID0gMTApK2ZhY2V0X3dyYXAoflJlbGF0aXZlLlN0cmVuZ3RoKQpgYGAKUmVsYXRpdmUuU3RyZW5ndGjkuLpC5oiWReaXtu+8jOS8muWHuueOsOS4gOS6m0VQUy5SYXRpbmfmr4/ogqHmlLbnm4rmjpLlkI3pnaDlkI7nmoTlhazlj7jjgIIKYGBge3J9CmdncGxvdChyYXdfZGF0YSxhZXMoeD1SZWxhdGl2ZS5QcmljZS5TdHJlbmd0aCkpK2dlb21faGlzdG9ncmFtKGJpbndpZHRoID0gMTApK2ZhY2V0X3dyYXAoflJlbGF0aXZlLlN0cmVuZ3RoKQpgYGAKUmVsYXRpdmUuU3RyZW5ndGgo55u45a+55by65byx6K+E57qnKeS4ukXml7Ys6IKh5Lu355u45a+55by65bqm5oyH5qCH5Lya5YGP5L2O44CCCmBgYHtyfQpnZ3Bsb3QocmF3X2RhdGEsYWVzKHg9UEUuUmF0aW8pKStnZW9tX2hpc3RvZ3JhbShiaW53aWR0aCA9IDEwKStmYWNldF93cmFwKH5SZWxhdGl2ZS5TdHJlbmd0aCkKYGBgCuagueaNrlJlbGF0aXZlLlN0cmVuZ3Ro5p2l5Lqn55Sf5pWj54K55Zu+CmBgYHtyfQpnID0gZ2dwbG90KHJhd19kYXRhLCBhZXMoeCA9IEVQUy5SYXRpbmcsIHkgPSBQRS5SYXRpbykpCmcrZ2VvbV9wb2ludChhZXMoY29sb3I9UmVsYXRpdmUuU3RyZW5ndGgpKStmYWNldF93cmFwKH5SZWxhdGl2ZS5TdHJlbmd0aCkKYGBgCuagueaNrlNhbGVzLk1hcmdpbnMuUk9F5p2l5Lqn55Sf5pWj54K55Zu+CmBgYHtyfQpnID0gZ2dwbG90KHJhd19kYXRhLCBhZXMoeCA9IEVQUy5SYXRpbmcsIHkgPSBQRS5SYXRpbykpCmcrZ2VvbV9wb2ludChhZXMoY29sb3I9U2FsZXMuTWFyZ2lucy5ST0UpKStmYWNldF93cmFwKH5TYWxlcy5NYXJnaW5zLlJPRSkKYGBgCgoK55u45YWz5oCn5YiG5p6QCmBgYHtyfQpyZXF1aXJlKEdHYWxseSkKZ2dwYWlycyhyYXdfZGF0YVssYygyLDMsNildKQpgYGAK6L+Z5Lqb5pWw5o2u5LmL6Ze05Yeg5LmO5rKh5pyJ57q/5oCn55u45YWz5oCn77yM5LiU5pWw5o2u6YeP5aSq5bCR77yM5YiG5p6Q6Iez5q2k57uT5p2f44CCCgoKCgo=