0

我有一个包含多列的数据框,其中一个(称为:drift.N)是一系列 TRUE 和 FALSES。我将如何将“TRUE”行与“FALSE”行分开或要求 R 告诉我哪些行是drift.N=="TRUE" ?

4

2 回答 2

11

如果您有一个名为的 data.frame df

df[df$column_name,]

为您获取 data.frame 的子集,其中column_nameequals TRUE。要获取FALSE子集:

df[!df$column_name,]

(发现感叹号!),在哪里!是NOT。获取索引在column_name哪里TRUE

which(df$column_name)
which(!df$column_name)

最后,我建议您上网下载一些基本的 R 教程并学习它们。这些问题以及许多其他基础知识将在其中得到处理。参见例如:

于 2012-07-17T14:46:52.263 回答
2

这真的很容易,因为R可以使用逻辑索引。因此,如果drift.N已经包含 TRUE/FALSE,则只需:

yourdata[yourdata[, "drift.N"], ]

应该管用。基本上,将列向量yourdata[, "drift.N"]作为您想要从整个数据帧中获取的行子集传递,yourdata. drift.N == TRUE将返回的行。

于 2012-07-17T14:47:45.367 回答