r - 如何理解r数据框中的方括号和逗号
问题描述
我正在关注一个纸质示例,其中白血病.train 数据框有 38 个 obs 和 7130 个变量。我对语法的理解是 y1 将是与列 [2] 相对应的白血病.train 的一部分。当我打印 y1 时,我获得了与第 7130 列相对应的值。为什么?我不明白什么...
y1 <- leukemia.train[, dim(leukemia.train)[2]]
> y1
[1] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1
解决方案
dim(x)
是一个向量,其维度为x
- 即其行数和列数(对于二维矩阵/data.frame)。
在 的情况下leukemia.train
,维度向量将如下所示:
[1] 38 7130
接下来,您将获取它的第二个元素:dim(leukemia.train)[2]
,并使用它来对整个矩阵进行子集化。
因此,您的陈述等同于:
y1 <- leukemia.train[, 7130]
另一个小而重要的细节:分配后,y1
将不会“成为”原始矩阵的一部分。相反,它是您要设置子集的矩阵部分的副本(即它的第 7130 列)。
推荐阅读
- vb.net - 是否可以让 WebView 控件读取本地 html 文件?
- command-line - 从命令行跳转弹出消息停止android模拟器
- spring-batch - 使用 Cassandra 数据库实现 Spring Batch
- c# - 是否可以找出从 1 类型派生的类型
- python - 带有请求的蛮力攻击 - 代码不断尝试相同的密码
- elasticsearch - logstash 未在 Windows 10 pro 中启动 - ELK 堆栈
- r - 如何在for if循环中根据因子对离散分布进行采样
- arrays - NodeJS fs - 无法读取外部 json 文件
- swift4.2 - 未能在 Xcode 10.1 中发出预编译头文件
- r - 面板数据的滚动平均值(有一些细节)