r基础1

向量

a=c(10,20,30,40,50)
a[c(1,2,5)]#取 10 20 50
a[c(-1,-5)] #去掉10 50
a[1:4] #取10 20 30 40
a[2] #取20
sort(a) #排序
rev(a) #倒序

rep(0,5)产生重复出现的数字序列
seq(1,9,2) #等差数列
a[which(a>20 & a<50) ]

as.numeric(“12”) #字符串转换为数字

矩阵、

vector=c(1,2,3,4,5,6)
m1=matrix(vector,2,3,byrow=TRUE)
m1[1,3] #第一行第三列
colnames(m1)=c(“x”,“y”,“z”)
rownames(m1)=c(“a”,“b”)
m1[“a”, ] #第a行
solve(m1)转置

A=m1
apply(A,1,sum)#第二个参数为1按行操作,
apply(A,2,sum)#第二个参数为2按列操作,

if

if( x){ 为真时执行的代码 }
x=50
if (is.integer(x)){print(“X是一个整数”)}

if( x){
为真时执行的代码
}else{为假执行的代码
}

x=c(“a”,“b”,“c”)
if (“a” %in% x){
print(“包含a”)
}else{
print(“不包含a”)
}

x=c(“a”,“b”,“c”)
if (“a” %in% x){
print(“包含a”)
}else if (“b” %in% x){
print(“不包含b”)
}else{
print(“没找到”)
}
switch(3,“a”,“b”,“c”)

循环

repeat{
//代码
if(条件){
break
}
}

v<-LETTERS[1:4]
for (i in v){
print(i)
}

while(condition){
代码
}

v<-c("g","r")
c<-2
while(c<7){
print(v)
c=c+1
}

函数

function_name<-function(arg1,…){函数体}

列表

保存不同类型数据 可以是矩阵 函数
list_data<-list(“a”, c(0,1), 90, matrix(c(1,2,3),nrow=2), list(“a”,2))

#給列元素起名字
names(list_data)<-c(“m”,“n”,“p”)
list_data$m
list_data[3]#访问列表第三个元素

list_data[4]<-“新元素” #添加元素
list_data[4]<-NULL #删除元素
t_data[4]<-“更新元素” #更新元素

l1<-list(1,2)
l2<-list(“a”,“b”)
merged.list<-c(l1,l2) #合并列表

v1<-unlist(l1) #列表转换为向量

矩阵

p<-matrix(c(3:14),nrow=4,byrow=TRUE,
dimnames=list(rownames,colnames))
p[,3] #获取第三列
p[2,] #获取第2行

数组

v1<-c(5,6)
v2<-c(1,2,3,4)
column.names<-c(“c1”,“c2”)
row.names<-c(“r1”,“r2”)
matrix.names<-c(“m1”,“m2”)
arr<-array(c(v1,v2),dim=c(2,2,2),
dimnames=list(row.names,column.names,matrix.names))
arr[3,2] #显示第二个矩阵中第三行的元素
arr[1,2,3]#显示第三个矩阵中第1行第2列元素

#apply计算
r<-apply(arr,c(1),sum) #算所有矩阵第一行的数字之和

数据框

table=data.frame(姓名=c(“c1”,“c2”),月薪=c(222,111))
str(table) #获取数据结构

#提取指定的列
r<-data.frame(table 姓 名 , t a b l e 姓名,table ,table月薪)

#提取前两行
table[1:2,]

#读取第2、3行的第1、2两列
r<-table[c(2,3),c(1,2)]

添加列
table$部门<-c(“运营”,“技术”)

cbind将多个向量合成一个数据框
v1<-c(5,6)
v2<-c(1,2)
table2<-cbind(v1,v2)

合并两个数据框
r<-rbind(table,table2)

数据合并

#inner join
df=merge(x=df1,y=df2,by=“ID”)

#full join
df=merge((x=df1,y=df2,by=“ID”,all=TRUE)

#LEFT join
df=merge((x=df1,y=df2,by=“ID”,all.x=TRUE)

#right join
df=merge((x=df1,y=df2,by=“ID”,all.y=TRUE)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
校园悬赏任务平台对字典管理、论坛管理、任务资讯任务资讯公告管理、接取用户管理、任务管理、任务咨询管理、任务收藏管理、任务评价管理、任务订单管理、发布用户管理、管理员管理等进行集中化处理。经过前面自己查阅的网络知识,加上自己在学校课堂上学习的知识,决定开发系统选择小程序模式这种高效率的模式完成系统功能开发。这种模式让操作员基于浏览器的方式进行网站访问,采用的主流的Java语言这种面向对象的语言进行校园悬赏任务平台程序的开发,在数据库的选择上面,选择功能强大的Mysql数据库进行数据的存放操作。校园悬赏任务平台的开发让用户查看任务信息变得容易,让管理员高效管理任务信息。 校园悬赏任务平台具有管理员角色,用户角色,这几个操作权限。 校园悬赏任务平台针对管理员设置的功能有:添加并管理各种类型信息,管理用户账户信息,管理任务信息,管理任务资讯公告信息等内容。 校园悬赏任务平台针对用户设置的功能有:查看并修改个人信息,查看任务信息,查看任务资讯公告信息等内容。 系统登录功能是程序必不可少的功能,在登录页面必填的数据有两项,一项就是账号,另一项数据就是密码,当管理员正确填写并提交这二者数据之后,管理员就可以进入系统后台功能操作区。项目管理页面提供的功能操作有:查看任务,删除任务操作,新增任务操作,修改任务操作。任务资讯公告信息管理页面提供的功能操作有:新增任务资讯公告,修改任务资讯公告,删除任务资讯公告操作。任务资讯公告类型管理页面显示所有任务资讯公告类型,在此页面既可以让管理员添加新的任务资讯公告信息类型,也能对已有的任务资讯公告类型信息执行编辑更新,失效的任务资讯公告类型信息也能让管理员快速删除。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值