R语言统计分析与机器学习-第一章作业

1:生成一个包含100个元素的向量,元素的取值范围为0-1000,并且该向量中前40个元素是偶数,第41~80个元素为5的倍数,最后20个元素是3的倍数。
2:求向量中奇偶个数
3:将向量转化为一个10x10的矩阵,并求每行每列的和
4:将所得向量转化为10x5x2的高维数组并计算每层矩阵的和
5:将10x10的矩阵转换为数据框,其中列名为a,b,c,...,j,并输出前两行
6:通过for循环,输出向量所有的偶数和奇数,并且计算出奇数、偶数的和

##1:生成一个包含100个元素的向量,元素的取值范围为0-1000,
##并且该向量中前40个元素是偶数,第41~80个元素为5的倍数,
##最后20个元素是3的倍数。
set.seed(111)
vec=sample(seq(1:1000),1000)
ii=1
jj=0
a=b=c=vector()
#b=vector()
#c=vector()
for(ii in 1:length(vec)){
  ##偶数
  if((vec[ii]%%2==0)&length(a)<40){
    a=c(a,vec[ii])
  }
  ##5的倍数
  if((vec[ii]%%5==0)&length(b)<40){
    b=c(b,vec[ii])
  }
  ##3的倍数
  if((vec[ii]%%3==0)&length(c)<20){
    c=c(c,vec[ii])
  }
  ##合并向量
  d=c(a,b,c)
}
##2:求向量中奇偶个数
for (ii in 1:100) {
  if(d[ii]%%2==0){
    jj=jj+1
  }
} 
cat("偶数有",jj,"个")
cat("奇数有",100-jj,"个")
##3:将向量转化为一个10x10的矩阵,并求每行每列的和
B=matrix(d,nrow = 10)
e=rowSums(B)
f=colSums(B)
cat("每行和为",e)
cat("每列和为",f)
##4:将所得向量转化为10x5x2的高维数组并计算每层矩阵的和
g=array(d,c(10,5,2))
sum1=sum(rowSums(g[,,1]))
sum2=sum(rowSums(g[,,2]))
cat("第一层矩阵和为",sum1)
cat("第一层矩阵和为",sum2)
##5:将10x10的矩阵转换为数据框,其中列名为a,b,c,...,j,并输出前两行
mat2df=as.data.frame(B)
colnames(mat2df)=c("a","b","c","d","e","f","g","h","i","j")
mat2df[1,]
mat2df[2,]
##6:通过for循环,输出向量所有的偶数和奇数,并且计算出奇数、偶数的和
kk=1
h=i=vector()
for (kk in 1:100) {
  if(d[kk]%%2==0) h=c(h,d[kk])
  else i=c(i,d[kk])
}
cat("偶数和为",sum(h))
cat("奇数和为",sum(i))

  • 4
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值