[关闭]
@fanxy 2016-09-11T12:48:10.000000Z 字数 1595 阅读 2127

附:R语言入门

樊潇彦 复旦大学经济学院 中级宏观


1. 数据类型与结构

基本数据类型

  1. data(iris)
  2. class(iris) # 数据类型
  3. dim(iris) # 几行几列
  4. nrow(iris); ncol(iris)
  5. colnames(iris) # 指标名称
  6. attributes(iris) # 数据性质
  7. str(iris) # 数据结构
  8. head(iris); tail(iris) # 前6行和后6行
  9. summary(iris)

2. 数据读取:data.table, readxl 等

  1. setwd("D:\\...\\Ch02") # 设置工作目录
  2. library(data.table)
  3. gdp_csv=fread("../Ch01/GDP.csv",header=T) # 读取.csv数据
  4. library(readxl)
  5. gdp_xlsx=read_excel("Ch02_Data.xlsx",col_names=T,sheet="gdp_idx") # 读取excel数据
  6. library(foreign)
  7. write.dta(gdp_xlsx, file="gdp.dta") # 另存为.dta
  8. library(readstata13)
  9. gdp_dta=read.dta13("gdp.dta") # 读取stata13数据
  10. library(readr)
  11. netdata=read_csv("http://curiousquant.com/inst/extdata/Indexes.csv") # 下载网络数据
  12. write_csv(netdata, "netdata.csv") # 另存为.csv

3. 数据整理:tidyr, dplyr

数据整理

  1. gdp=gdp%>%
  2. select(-varid,-varname)%>% # 选择除varid和varname之外的所有指标
  3. gather(year,value,-var)%>% # 将列指标1952-2015按年整合
  4. mutate(year=as.numeric(year))%>% # 将字符型指标转换为数字型
  5. filter(!is.na(value))%>% # 选取value不为空值的样本
  6. arrange(var,year)%>% # 按var和year排序
  7. spread(var,value) # 按var展开为列指标
  8. head(gdp) # 查看前6个样本
  9. gdpstr=gdp%>%
  10. mutate(sec1=gdp1/gdp)%>%
  11. mutate(sec2=gdp2/gdp)%>%
  12. mutate(sec3=gdp3/gdp)%>%
  13. mutate(con=gdpexpcpri/gdpexp)%>%
  14. mutate(inv=gdpexpi/gdpexp)%>%
  15. mutate(gov=gdpexpcgov/gdpexp)%>%
  16. select(year,sec1:gov)%>%
  17. gather(var,share,-year)

4. 数据可视化:ggplot2

ggplot2
ggplot_command.jpg-141.5kB

  1. ggplot(gdpstr[gdpstr$var %in% c("sec1","sec2","sec3"),],aes(year,share,color=var))+
  2. geom_line(size=1)+ labs(title="生产法GDP结构",x="",y="")+
  3. scale_colour_discrete(labels = c('第一产业','第二产业','第三产业'))+
  4. guides(color = guide_legend(title = NULL)) + theme_bw()+ theme(legend.position = 'bottom')

5. 常用命令一览

  1. R Reference Card
  2. Data wrangling cheatsheet
  3. ggplot2 cheatsheet
  4. Cookbook for R
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注