# Review Session
Country <- c('US', 'UK', 'CA', 'CN', 'KR')
Year <- seq(2010,2019,by=1)
length(Country)
GDP <- runif(length(Country)*length(Year), min=0, max=10)
# rep(Country, each=length(Year))
# rep(Country, length(Year))
A <- rep(Country, each=length(Year))
B <- rep(Year, length(Country))
mydata1 <- data.frame(Country=A, Year=B, GDP)
colnames(mydata1) <- c('Country', 'Year', 'GDP')
CPI <- sample(c(1,2,3), 50, replace=TRUE)
mydata2 <- data.frame(Country=A, Year=B, CPI)
# Merging data——————merge合并
data_merge <- merge(mydata1, mydata2, by=c('Country', 'Year'))
# Matrix
A <- matrix(c(1:12), 4, 3)
B <- matrix(c(15:1), 3, 5, byrow = TRUE)
A%*%B
C <- matrix(c(1:9), 3, 3)
t(C) # transpos
det(C) # determinant
solve(C) # inverse 求逆
# indexing and which() function
LETTERS[c(1:3)]
A[c(1:2), c(2:3)]
# GDP in [6,10] and CPT=1, then Level is 'High'
data_merge$Level <- NA
data_merge$Level[which(data_merge$GDP<=10 &
data_merge$GDP>=6 &
data_merge$CPI==1)] <- 'High'
data_merge$Level[which(data_merge$GDP<=6 &
data_merge$GDP>=3 &
data_merge$CPI==2)] <- 'Middle'
data_merge$Level[which(data_merge$GDP<=3 &
data_merge$GDP>=0 &
data_merge$CPI==3)] <- 'LOW'
data_merge$Level1 <- data_merge$Level
data_merge2 <- data_merge[,-c(6)]
data_merge2 <- data_merge[, c(1,2,3,4,5)]
# visualization
library(ggplot2)
data('economics')
cols <- c('psavert'='red', 'uempmed'='blue')
P1 <- ggplot(data=economics) +
geom_line(aes(x=date, y=psavert, color='psavert')) +
geom_line(aes(x=date, y=uempmed, color='uempmed')) +
labs(title='A good title', x='Date', y='Personal saving rate') +
scale_color_manual(name='', values=cols)
library(gridExtra)
grid.arrange(P1,P1,P1,ncol=1)
R语言代码记录7
最新推荐文章于 2022-05-20 17:01:43 发布
这篇博客介绍了如何使用R语言进行数据处理,包括创建数据框、合并数据、矩阵运算以及使用ggplot2库进行数据可视化。通过示例展示了如何利用merge函数合并数据,使用矩阵运算进行乘法、转置和求解逆矩阵,以及如何基于GDP和CPI设定数据等级。最后,用ggplot2绘制了两条折线图并进行了布局排列。
摘要由CSDN通过智能技术生成