当前位置: 首页 > news >正文

R语言 | 数据框

目录

一、认识数据框

7.1 建立第一个数据框

7.2 验证与设定数据框的列名和行名

 二、认识数据框的结构

 三、获取数据框内容

3.1 一般获取

3.2 特殊字符$

3.3 再看取得的数据

 四、使用rbind()函数增加数据框的行数据

 五、使用cbind()函数增加数据框的列数据

5.1 使用$符号

5.2 一次增加多列数据

 六、再谈转置函数t()


一、认识数据框

数据框是一系列的列向量所组成的,我们可以将它视为矩阵的扩充。对单独的向量与矩阵而言,它们的元素必须相同,但对数据框而言,不同列的向量的元素类别可以不同。数据框还有其他特色如下:

(1)每个列皆有一个名称,如果没有设置,R语言默认该列的名称是V1、V2……,可使用names()和colname(0函数查询或设定数据框列的名称。

(2)每一个行也要有一个名称,R语言默认该行的名称是“1” “2” ……,相当于数字编号,但这些数字是字符串类型,可使用row.naems()函数查询或设定行的名称。

7.1 建立第一个数据框

data.frame()函数,可将多个向量组成是数据框。

7.2 验证与设定数据框的列名和行名

可使用names()和colnames()函数查询或设定数据框列的名称。

 二、认识数据框的结构

如果使用str()函数,了解数据框的结构时,会发现一个问题。 mit.Name(现已改成Name)和mit.Gender(现已改成Gender)分明是字符串向量,但在建立数据框时却成了因子变量。在使用data.frame()函数建立数据框时,可以增加参数“stringsAsFactors=FALSE"。

但我的运行结果却是这样子的:

 三、获取数据框内容

3.1 一般获取

若想要获取数据框的值,可以将数据框当作矩阵处理。

 

3.2 特殊字符$

再看一下mit.Newinfo数据框:

 可以看到每个列名前面皆有"$"符号,这个符号主要是为了方便读取数据框的列名内的数据。

3.3 再看取得的数据

对于对象X而言,当使用X[,n]时,是取得对象X的第n列,所获得的结果是一个向量。如果使用X[n]方式可取得X对象的第n列,则返回的是数据框。如果使用X[-n]方式,则表示取得X对象的除第n列以外的数据,所返回的数据也是数据框。

 四、使用rbind()函数增加数据框的行数据

 如果想要一次增加多笔数据,可以先将这些行数据组合成一个数据框,然后再使用rbind()函数将两个数据框组合即可。

特别需要注意的是,所建数据框的列名必须与想要合并组合的数据框相同,然后使用rbind()函数将两个数据框组合,即可得到想要的结果。当然也可以直接使用索引值增加数据框的行数据。

 五、使用cbind()函数增加数据框的列数据

5.1 使用$符号

为mit.info对象增加Weight列数据,数据分别为65,71,58,55。

5.2 一次增加多列数据

碰上需要一次加多列数据的情况,最简单的方法是为要增加的列数据建立数据框,最后再使用cbind()函数,将两个数据框组合。

 六、再谈转置函数t()

如果我们想要将矩阵对象转换为数据框,可以依照下列两个步骤进行操作。

(1)使用t()函数,将行向量组成的矩阵转换成向量格式。

(2)正式转成数据框。 

http://www.lryc.cn/news/68185.html

相关文章:

  • 基于SpringBoot的招生管理系统的设计与实现
  • Oracle Profile详解
  • r语言tidyverse教程:5 字符串处理stringr
  • 知识变现海哥:知识变现的本质就是卖
  • jdbc和druid和mybatis之间的关系
  • 云原生Istio案例实战
  • 解读赛力斯年报:华为智选车的B面
  • 互联网内卷严重?你咋不看看其他行业呢?无非是三十晚上无月亮,大家都一样
  • CompletableFuture异步任务编排使用
  • Scala的高级用法
  • 【31.在排序数组中查找元素的第一个和最后一个位置】
  • 如何构建“Buy Me a Coffee”DeFi dApp
  • Redis 实战篇:巧用 Bitmap 实现亿级海量数据统计
  • 3 天,入门 TAURI 并开发一个跨平台 ChatGPT 客户端
  • 14个最佳创业企业WordPress主题
  • MySQL基础(三十)PowerDesigner的使用
  • nginx 服务器总结
  • 基于Hebb学习的深度学习方法总结
  • 思科模拟器 | 访问控制列表ACL实现网段精准隔绝
  • Python os模块详解
  • Oracle PL/SQL基础语法学习13:比较运算符
  • 金仓数据库适配记录
  • ElasticSearch 学习 ==ELK== 进阶
  • 【数据结构 -- C语言】 双向带头循环链表的实现
  • 自然语言处理与其Mix-up数据增强方法报告
  • Vue(组件化编程:非单文件组件、单文件组件)
  • 【MATLAB数据处理实用案例详解(22)】——基于BP神经网络的PID参数整定
  • 第11章 项目人力资源管理
  • 07-Vue技术栈之(组件之间的通信方式)
  • 度量学习Metirc Learning和基于负例的对比学习Contrastive Learning的异同点思考