导入 cvs 但基于特定列中的零删除行[重复]

Posted

技术标签:

【中文标题】导入 cvs 但基于特定列中的零删除行[重复]【英文标题】:Importing cvs but removing rows based on zeros in a particular column [duplicate] 【发布时间】:2018-01-11 08:29:44 【问题描述】:

我正在绘制一个时间序列。我有一个包含 11 个变量(列)的 csv 文件,标题名称位于数据的第一行。我的重点是时间(x 轴)和 CO(y 轴)。时间和 CO 分别是第一列和第二列。 CO 列中有一些零值。因此,我想删除数据中“CO”列中为零的行。

以下是我正在讨论的示例:

   Time           CO    C    D       E      F   G   H    I   J        K
2016-11-10 6:10   0.04  2.5 20.5    99675   1   62  0.3  2  10.3    126
2016-11-10 6:20   0     0   20.4    99645   1   65  0.3  2  12.4    126
2016-11-10 6:30   0     0   20.5    99735   1   67  0.3  2  12.4    126
2016-11-10 6:40   0.05  0   20.7    99725   0   69  0.3  2  12.4    126
2016-11-10 10:00  0     2.5 31      99251   1   46  0.3  3  13.6    0
2016-11-10 10:10  0.043 2   33      99445   1   45  0.3  3  18      0
2016-11-10 10:20  0.045 2   33      99541   1   43  0.3  3  18      0
2016-11-10 10:30  0     2   33.8    99206   1   43  0.3  3  18      0

我想要下面的结果:

   Time           CO    C    D       E      F   G   H    I   J        K
2016-11-10 6:10   0.04  2.5 20.5    99675   1   62  0.3  2  10.3    126
2016-11-10 6:40   0.05  0   20.7    99725   0   69  0.3  2  12.4    126
2016-11-10 10:10  0.043 2   33      99445   1   45  0.3  3  18      0
2016-11-10 10:20  0.045 2   33      99541   1   43  0.3  3  18      0

过去,我的数据末尾有零值,所以我只做了下面的代码:

data1<- read.csv("path",nrows=485)

在这种情况下,数据中混杂了零,我不知道该怎么办。

关于如何根据 CO 列删除零的帮助将不胜感激。

谢谢。

【问题讨论】:

如果数据不是太大,您可以阅读整个内容并将其子集您的数据 请将您从dput(data) 获得的结果粘贴到这里,也许可以帮助您 【参考方案1】:

由于您没有说您的数据集非常庞大,您不妨先读入整个 CSV,然后取其适当的子集。

data1 <- read.csv("path") data1 <- subset(data1, CO != 0)

【讨论】:

谢谢@mm689!我的数据不大,所以效果很好。

以上是关于导入 cvs 但基于特定列中的零删除行[重复]的主要内容,如果未能解决你的问题,请参考以下文章

同时删除两列中的重复行[重复]

pandas删除数据行中的重复数据行基于dataframe所有列删除重复行基于特定数据列或者列的作何删除重复行删除重复行并保留重复行中的最后一行pandas删除所有重复行(不进行数据保留)

如果特定列中的值不是熊猫数据框中的整数,则删除行

R:从R中的大型数据集中根据列中的值删除行[重复]

如何通过删除基于 8 列中的 2 列的重复项来清理 BigQuery 表?

根据另一列删除一列中的重复行并保持其他列不变