• R语言(2)复杂数据类型


    矩阵:

    矩阵创建:

    a<-matrix(data=1:20,nrow = 5,ncol = 4,byrow = TRUE)

    b<-matrix(data=1:20,c(5,4),byrow = TRUE)

    #byrow=TRUE表明矩阵按行填充

    a<-matrix(data=1:6,nrow = 2,ncol = 3,dimnames = list(c('r1','r2'),c('c1','c2','c3')))

    a

     矩阵引用:

    1:

    a[i,]:返回矩阵中的第i行

    a[,j]:返回矩阵中的第j列

    a[i,j]:返回第i行第j列元素

    a[i,-j]:返回第i行但排除第j列元素

    2:

    a[c(1,3),c(2:4)]:返回第1,3行,第2,3,4列元素

    a[c(T,T),]:返回第一行和第二行

    3:按照索引名称

    a['r1',]

     矩阵修改:

    a[1,]<-c(199,98,99)#第一行修改为199,98,99

    a[1,]<-100#第一行全部变成100

    矩阵转置

    t(a)

     

    数组:

    ?array

     

     创建:

    b<-array(1:12,c(2,3,2))

     dim1<-c('A1','A2')

    dim2<-c('B1','B2','B3')

    dim3<-c('C1','C2')

    b<-array(1:12,c(2,3,2),dimnames = list(dim1,dim2,dim3))

     

    数组的引用:

    b[,,'C1']

    b[,,1]

    b[,,c(T,F)]

    三种一样

     

     修改

    b[,,1]<-matrix(7:12,c(2,3))

     

     数据框:

    创建:

    student<-data.frame(id=c(1001,1002,1003), name=c('bob','lee','tom'),

            gender=c('F','M','M'),

            stringsAsFactors = F)

    student

     

     访问:

    student[1,] #返回的是数据框

     

    student[,1]   #返回的结果是一个向量

     

    student[,'id']  ##返回的结果是一个向量

     

    student['id'] #返回的结果是数据框

     

     修改:

    student[1,1]<-1004

    student

     

    列表:

     创建:

    mylist<-list(obj1,obj2,...) 其中object可以是目前出现的任意类型

    list1<-list(x=1,y='char',c=a,d=student)

    访问:

     list1[[4]]

    list1[['d']]

     

  • 相关阅读:
    Spring Data Commons
    Linux | 进程
    NFT营销如何赋能品牌破圈增长?
    复亚智能广东智慧应急项目案例:构建“空地一体化”
    链表| leecode刷题笔记
    【JavaEE】多线程进阶(一)饿汉模式和懒汉模式
    【技巧】Win11 右键新建菜单没有文本文档选项
    Java基础
    Wireshark TS | 应用传输缓慢问题
    模型运行过程中占内存的中间变量
  • 原文地址:https://blog.csdn.net/weixin_54824895/article/details/127035358