R语言【base】——data.frame():创建数据框,紧耦合的变量集合,它们共享矩阵和列表的许多属性,被大多数R建模软件用作基本数据结构。

Package base version 4.2.0


Description

创建数据框(data frame),紧耦合的变量集合,它们共享矩阵和列表的许多属性,被大多数R建模软件用作基本数据结构。

数据框:一种在统计分析和数据处理中常用的数据结构,由行和列组成,类似于电子表格。


Usage

data.frame(..., row.names = NULL, check.rows = FALSE,check.names = TRUE, fix.empty.names = TRUE,stringsAsFactors = FALSE)

Arguments

参数【...】:这些参数的形式是 value 或 tag = value。组件名称是基于标签(如果存在)或解析参数本身创建的。

参数【row.names】:NULL 或单个整数或字符串,指定要用作行名的列,或一个字符或整数向量,为数据框提供行名。

参数【check.rows】:如果为 TRUE,则检查行长度与名称的一致性。

参数【check.names】:逻辑值。如果为TRUE,则检查数据框中的变量名,以确保它们是语法上有效的变量名,并且不重复。如有必要,可以对它们进行调整(通过make.names)。

参数【fix.empty.names】:逻辑值,指示“未命名”的参数(在没有被 someName = arg 正式命名)是否获得自动构造的名称,或者更确切地说是 “”。即使 check.names 为 FALSE,如果应该保留 “”名称,也需要设置为 FASLE。

参数【stringsAsFactors】:逻辑值:应该将字符向量转换为因子吗?“factory-fresh”的默认值以前为TRUE,但在R 4.0.0 中已更改为FALSE。


Details

数据框是给定类“data.frame”的具有相同行数且具有唯一行名的变量列表。如果不包含变量,则行名决定行数。

列名应该是非空的,尝试使用空名称将产生不支持的结果。允许使用重复的列名,但是您需要对data.frame使用check.names = FALSE来生成这样的数据帧。然而,并不是所有对数据帧的操作都会保留重复的列名:例如,类似矩阵的子集将强制结果中的列名是唯一的。

data.frame通过调用as.data.frame(optional = TRUE)将它的每个参数转换为一个数据帧。由于这是一个泛型函数,因此可以编写方法来根据其类更改参数的行为:R提供了许多这样的方法。传递给data.frame的字符变量如果没有I保护,并且参数stringsAsFactors为真,则转换为因子列。如果将列表或数据帧或矩阵传递给data.frame,则好像每个组件或列都作为单独的参数传递(由I保护的矩阵除外)。

传递给data.frame的对象应该具有相同的行数,但是原子向量(参见is.vector)、因子和受I保护的字符向量将在必要时被循环使用整次(包括作为列表参数的元素)。

如果在对data.frame的调用中没有提供行名,则从具有合适名称的第一个组件中获取行名,例如具有行名或数据帧的命名向量或矩阵。(如果该组件随后被回收,则这些名称将被丢弃并发出警告。)如果row.names作为NULL提供或没有找到合适的组件,则行名是从1开始的整数序列(并且这样的行名被认为是“自动的”,而不是由as.matrix保留)。

如果提供的行名长度为1,并且数据帧只有一行,则使用row.names来指定行名,而不是列名(通过名称或数字)。

从不受I保护的向量输入中删除名称。


Value

一种数据框架,一种类似矩阵的结构,其列可以是不同的类型(数字、逻辑、因子和字符等)。

如何创建数据帧的名称是复杂的,本段的其余部分只是基本的故事。如果参数都是命名的简单对象(不是列表、数据帧矩阵),则参数名给出列名。对于一个未命名的简单参数,使用参数的离去版本作为名称(去掉了封闭的I(…))。对于具有多个命名列的命名矩阵/列表/数据帧参数,列的名称是参数的名称后跟一个点和参数内的列名:如果参数未命名,则使用参数的列名。对于包含单个列的已命名或未命名的矩阵/列表/数据帧参数,结果中的列名就是参数中的列名。最后,将这些名称调整为唯一且在语法上有效,除非check.names = FALSE。


Example

L3 <- LETTERS[1:3]
char <- sample(L3, 10, replace = TRUE)
(d <- data.frame(x = 1, y = 1:10, char = char))
   x  y char
1  1  1    A
2  1  2    A
3  1  3    C
4  1  4    B
5  1  5    B
6  1  6    A
7  1  7    A
8  1  8    A
9  1  9    A
10 1 10    B
data.frame(1, 1:10, sample(L3, 10, replace = TRUE))
   X1 X1.10 sample.L3..10..replace...TRUE.
1   1     1                              B
2   1     2                              C
3   1     3                              C
4   1     4                              B
5   1     5                              A
6   1     6                              A
7   1     7                              B
8   1     8                              A
9   1     9                              B
10  1    10                              C
is.data.frame(d)
[1] TRUE
(dd <- data.frame(d, fac = letters[1:10], stringsAsFactors = TRUE))
   x  y char fac
1  1  1    A   a
2  1  2    A   b
3  1  3    C   c
4  1  4    B   d
5  1  5    B   e
6  1  6    A   f
7  1  7    A   g
8  1  8    A   h
9  1  9    A   i
10 1 10    B   j
rbind(class = sapply(dd, class), mode = sapply(dd, mode))
      x         y         char        fac      
class "numeric" "integer" "character" "factor" 
mode  "numeric" "numeric" "character" "numeric"
stopifnot(1:10 == row.names(d)) 
(d0  <- d[, FALSE]) 
data frame with 0 columns and 10 rows
(d.0 <- d[FALSE, ]) 
[1] x    y    char
<0 行> (或0-长度的row.names)
(d00 <- d0[FALSE, ])
data frame with 0 columns and 0 rows

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/693950.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

二叉搜索树(二叉排序树、二叉查找树)

二叉搜索树&#xff08;二叉排序树、二叉查找树&#xff09; 一、定义二、操作&#xff08;一&#xff09;中序遍历&#xff08;二&#xff09;查找&#xff08;三&#xff09;插入&#xff08;四&#xff09;删除 三、二叉搜索树的应用四、二叉搜索树操作的性能分析五、总结 一…

解锁服务器外联:TinyProxy一键搭建指南

引言 在服务器需要访问外网的情况下&#xff0c;由于网络安全等原因&#xff0c;许多生产服务器限制了对外网的访问。本文介绍如何通过在一台能够访问外网的服务器上部署TinyProxy来实现代理&#xff0c;使得其他服务器可以通过该代理访问外网。 安装 TinyProxy是一个轻量级…

java异常处理设计

异常的继承体系 java 中的异常的超类是 java.lang.Throwable(后文省略为 Throwable), 他有俩自类Exception和Error&#xff0c;Error是由jvm管理&#xff0c;我们不需要考虑。 RuntimeException是Exception的子类。 检查异常&#xff08;Checked Exceptions&#xff09;&#…

【kubernetes】认识K8S基础理论

目录 一、k8s是什么&#xff1f; 二、为什么要用k8s&#xff1f; 三、k8s的主要功能 四、k8s的集群架构和组件 4.1k8s的集群架构介绍 4.2k8s的master的核心组件 ①kube-apiserver&#xff1a;作为所有服务请求的统一访问入口 ②kube-controller-manager&#xff1a;控制…

腾讯云域名解析

腾讯云域名解析 1.登录腾讯云控制台&#xff0c;点击“云产品”&#xff0c;选择“云解析”&#xff0c;进入云解析界面&#xff1b;2.在此界面可以选择购买或者添加新的域名&#xff0c;若已经购买了域名&#xff0c;则在域名列表处选择需要解析的域名&#xff0c;点击“解析…

用Python实现学生成绩数据分析

我的代码使用了pygal库来创建一个简单的折线图&#xff0c;并将其保存为SVG格式的文件。下面是对您代码的分析&#xff1a; 学生成绩数据分析表&#xff1a; 分析代码&#xff1a; 导入库&#xff1a;您导入了pygal库&#xff0c;这是一个用于生成可缩放矢量图形&#xff08;S…

Chrome插件精选 — 颜色拾取

Chrome实现同一功能的插件往往有多款产品&#xff0c;逐一去安装试用耗时又费力&#xff0c;在此为某一类型插件挑选出比较好用的一款或几款&#xff0c;尽量满足界面精致、功能齐全、设置选项丰富的使用要求&#xff0c;便于节省一个个去尝试的时间和精力。 1. ColorZilla 下…

Java 判断字符/字符串相等

通过 判断相等的字符 举例&#xff1a; import java.util.*;public class Main {public static void main(String[] args) {Scanner sc new Scanner(System.in);char ch sc.next().charAt(0);if (ch M)System.out.print("");elseSystem.out.print("不等于…

vue保留用户在列表的操作记录, beforeRouteLeave离开当前组件缓存数据即可

最近遇到一个需求,用户在列表页的查询输入框输入条件后,点击查询,然后此时切换菜单,再回到之前的页面,希望能停留在上一次输入的结果上,如下例子,用户管理页面,输入yangfan这个关键词搜索后,结果如下图: 当我此时点击权限管理后,再点击用户管理切回来,结果依旧如上…

【leetcode题解C++】452.用最少数量的弓箭引爆气球 and 435.无重叠区间

452. 用最少数量的弓箭引爆气球 有一些球形气球贴在一堵用 XY 平面表示的墙面上。墙面上的气球记录在整数数组 points &#xff0c;其中points[i] [xstart, xend] 表示水平直径在 xstart 和 xend之间的气球。你不知道气球的确切 y 坐标。 一支弓箭可以沿着 x 轴从不同点 完全…

07.STL单调栈

单调栈的特点&#xff1a; 1.自顶向下一次递增&#xff0c;也就是上小下大的栈 单调栈代码&#xff1a; 算法思想&#xff1a;将不符合单调栈性质的弹出&#xff0c;符合的输入 #include<iostream> #include <stack> #include<queue> using namespace std…

如何修改docker容器的端口映射

要修改 Docker 容器的端口映射&#xff0c;你需要停止并删除现有的容器&#xff0c;然后使用新的端口映射重新运行容器。以下是详细步骤&#xff1a; 停止容器&#xff1a; 使用 docker stop 命令停止正在运行的容器。替换 <container_id> 为你要停止的容器的 ID 或者容器…

什么是智慧公厕?智慧公厕是基于“云大脑”的跨区域公共厕所综合管理系统

在城市快速发展的今天&#xff0c;公共厕所的管理和维护成为了一个重要的问题。传统的公共厕所管理方式往往效率低下、成本较高。然而&#xff0c;随着科技的进步和应用&#xff0c;智慧公厕已经成为了解决这一难题的利器。本文以智慧公厕源头厂家广州中期科技有限公司&#xf…

265.【华为OD机试真题】最长的指定瑕疵度的元音子串(滑动窗口算法-JavaPythonC++JS实现)

🚀点击这里可直接跳转到本专栏,可查阅顶置最新的华为OD机试宝典~ 本专栏所有题目均包含优质解题思路,高质量解题代码(Java&Python&C++&JS分别实现),详细代码讲解,助你深入学习,深度掌握! 文章目录 一. 题目-最长的指定瑕疵度的元音子串二.解题思路三.题解…

信息安全工程师 软考回顾(一)

&#x1f433;概述 图源&#xff1a;文心一言 信息安全证书已经考了一年有余&#xff0c;尽管我目前没有从业安全的打算&#xff0c;况且自己的实践能力与从业标准依然有所差距&#xff0c;但其中的内容也值得再温习一遍~&#x1f95d;&#x1f95d; 另外&#xff0c;如果你对…

四、深入学习TensorRT,Developer Guide篇(三)

上一篇文章我们一起看了下TensorRT有哪些特性或者支持哪些功能&#xff0c;这一节我们来详细的从API出发研究一下具体的实现&#xff0c;难度要上升了哦&#xff0c;请系好安全带&#xff0c;准备发车&#xff01; 文章目录 3. The C API3.1 The Build Phase3.1.1 Creating a …

常见消息中间件分享

文章目录 概念核心角色作用&使用场景应用解耦异步通信削峰填谷大数据流处理 使用模型点对点模型发布-订阅模型 常见消息中间件介绍一、kafka二、RabbitMQ三、RocketMQ 比较一、Kafka如何实现高吞吐量二、RocketMQ如何实现事务消息 概念 消息中间件是基于队列与消息传递技术…

C语言----------最后一个单词的大小

1.计算字符串最后一个单词的长度&#xff0c;单词以空格隔开&#xff0c;字符串长度小于5000。&#xff08;注&#xff1a;字符串末尾不以空格为结尾&#xff09; #include <stdio.h> #include<string.h> int main() {char arr[5000];gets(arr);int len strlen(a…

探索NFC技术在游戏玩具娱乐,医疗保健和穿戴设备领域的三大应用

NFC是与众不同的无线技术。这意味着它只能在两个设备相近时起作用。在其他用无线技术随机广播的方式以被接收时&#xff0c;NFC更重要的独特之处于其使用电源的方式。或者&#xff0c;更确切地说&#xff0c;它可以在不供电的环境下进行工作。它是一种非接触式智能卡技术的演进…

python3调用阿里云openapi脚本 - 生产环境

alicloud openapi 调用 - python 场景描述注意事项脚本如下场景描述 在各公司都在降本增效的前提下,可能更多的公司会选择性使用云服务器,这样相比较而言,对后续的服务器维护、产品使用来说,创造出更多便捷的方式,云服务也给我们带来了更多的便捷性,下面是从阿里云上摘抄…