我正在从R到C ++移植程序的一部分(不足以编译和运行)。我对R不熟悉。我在网上使用这些参考文章已经做得很好,但被以下几行难住了:
cnt2.2<-cnt2[,-1]
我在猜测:
cnt2
是一个二维矩阵cnt2.2
是一个声明为句点'。'的新变量。使用与字母字符相同的方式。<-
是一项任务。[,-1]
访问数组的一部分。我认为[,5]
表示所有行,仅限第5列。如果这是正确的,我不知道-1指的是什么。答案 0 :(得分:16)
本手册第2.7节对此进行了介绍:http://cran.r-project.org/doc/manuals/R-intro.html#Index-vectors
它是cnt2
对象的负索引,指定除第一列之外的所有行和所有列。
答案 1 :(得分:13)
否定索引指定删除(而不是保留)特定元素...因此x[,-1]
指定删除第一列(行是第一个维度,在逗号之前,列是第二个维度,在逗号之后) 。来自?"["
(http://stat.ethz.ch/R-manual/R-devel/library/base/html/Extract.html):
For ‘[’-indexing only: ‘i’, ‘j’, ‘...’ can be logical
vectors, indicating elements/slices to select. Such vectors
are recycled if necessary to match the corresponding extent.
‘i’, ‘j’, ‘...’ can also be negative integers, indicating
elements/slices to leave out of the selection.
答案 2 :(得分:5)
1)cnt2是二维矩阵
从你提供的代码来看,它确实是某种二维结构(很可能是一个矩阵)。
2)cnt2.2是一个用句点'。'声明的新变量。使用与字母字符相同的方式。
正确。
3)&lt; - 是一项任务。
正确。
4)[, - 1]访问数组的一部分。我认为[,5]意味着所有行,仅限第5列。如果这是正确的,我不知道-1指的是什么。
[,-1]
选择除第1列之外的所有列。请注意,与C ++不同,R中的索引从1开始而不是从零开始。