【发布时间】:2015-11-29 19:59:44
【问题描述】:
我有一个包含行名和列名的数据框。
0.01 0.02 0.03 0.04 0.05 ... Percent
J1 458 -160 -151 -52 -67 0.53
J2 459 -163 -154 -46 -92 0.01
J3 457 -165 -150 -51 -245 0.27
J4 402 -297 -87 -93 -122 1.00
...
我想创建一个数据子集,其中仅包含百分比列
C5.Subset<- subset(C5.Outliers, Percent<=0.5)
我希望的输出是这样的:
0.01 0.02 0.03 0.04 0.05 ... Percent
J2 459 -163 -154 -46 -92 0.01
J3 457 -165 -150 -51 -245 0.27
...
但是,我得到的输出与预期的非常不同。 R 没有创建一个排除百分比 >0.5 的行的新表,而是将这些行的百分比列中的值替换为零。这是我得到的结果表:
0.01 0.02 0.03 0.04 0.05 ... Percent
J1 458 -160 -151 -52 -67 0
J2 459 -163 -154 -46 -92 0.01
J3 457 -165 -150 -51 -245 0.27
J4 402 -297 -87 -93 -122 0
...
我想实际删除这些行。我做错了什么?
仅供参考,此可重现示例的代码在输入后即可运行。我的实际数据框来自具有相同列名和行名 (dim=17x600) 的 CSV 文件。
【问题讨论】:
-
请提供可重现的示例....?
-
WTF?你说这是一个矩阵!并且....如果那是从带有 read.csv 的 csv 文件中引入的,那将不是列名
-
所以在尝试了您的代码并且没有出现错误行为后,我倾向于将其关闭为不可重现,除非您可以提供一个实际说明假定问题的示例。
-
@joran 说了什么。你有一个奇怪的
subset()掩盖了基本版本吗? (1)find("subset")(2)sessionInfo()的结果好吗? -
另外,感谢大家的耐心等待,因为我是 R 和 Stack 的新手。