A <- matrix(c(1, 2, 1, 3, 1, 0, 0, 2, 1), nrow = 3,ncol = 3)
A
b <- as.matrix(c(1, 3, 2))
b
A %*% b
solve(A)
t(A)
t(b) %*% A %*% b
c <- rbind(A, c(5, 6, 7))
c
C <- cbind(c,matrix(c(3,9,4,2)))
c
d <- matrix(c(b, 5))
d
setwd("C:/R语言")
dat_1 <- read.csv("D01+实验一数据.csv")
dat_1
dat_2 <- data.frame(id = 1:nrow(esoph), esoph)
dat_2
dat <- merge(dat_1,dat_2)
dat
rm(dat_1,dat_2)
install.packages("dplyr")
library(dplyr)
dat <- inner_join(dat_1,dat_2,by="id")
dat
rm(dat_1,dat_2)
install.packages("sqldf")
library(sqldf)
dat_3 <- sqldf("SELECT tobgp,AVG(ncontrols) AS mean_ncontrols,STDEV(ncontrols) AS sd_ncontrols
FROM dat
WHERE (agegp = '25-34' OR agegp = '35-44') AND ncases > 0
GROUP BY tobgp
HAVING tobgp <> '30+' ")
dat_3
library(dplyr)
dat_3 <- filter(summarise(group_by(filter(dat,(agegp == '25-34' | agegp == '35-44') & ncases > 0),tobgp)
mean_ncontrols = mean(ncontrols),
sd_ncontrols = sd(ncontrols)),tobgp != '30+')
dat_3
sum <- 0
for (i in 0:10){
sum <- sum + (1.1 + .2*i)/(1.1^i)
}
print(sum)
firstLast_1 <- function(x){
if(length(x) == 1){
cat("向量的第一个和最后一个值相同")
return(x)
}
else return("第一个值",c(x[1]),"最后一个值",c(x[length(f)]))
}
firstLast_2 <- function(y){
if(length(y) == 1){
cat("向量长度为1,向量是",y)
}else return("向量长度不为1")
}
firstLast_3 <- function(z){
if(all(z) < 0)
cat("向量的所有值都小于0")
}
firstLast_4 <- function(w){
if(any(is.na(w)))
return(c(h[1],w[length(w)],sum(is.na(w))))
}
firstLast_4(c(1:4,NA))