【发布时间】:2013-09-11 12:36:41
【问题描述】:
我有一个如下所示的 data.frame (DF):
Col_names1 Col_values1 Col_names2 Col_values2 a 98 f 1 b 12 h 0.8 d 0 mn 0 e 0.12 p 0 .... .... .... ....
我必须逐行列出每个 Col_names 列中 Col_names 的频率。为此,我首先仅提取名称以具有以下 new_DF
Col_names1 Col_names2 a f b h d mn e p .... ....
然后我使用apply函数逐行列出名字的频率:
apl = apply(new_DF, 1, table)
问题在于,即使(例如“d”)初始 DF 中的相关数值为“0”时,它也给了我名称的频率。该频率不必计算。
PS:data.frame 总共有 500 列和 80 行。
【问题讨论】:
-
当“Col_values2”在该行中为零时,为什么会返回“e”行?
-
因为项目根据列是独立的。换句话说,在 Col_names2 中,与“e”对应的项目是“p”,具有“0”值,因此将其删除。 Col_names1 列中的项目“e”的值为 0.12,因此无需将其删除..
-
@Fuv8,那么您希望它如何工作呢?
data.frames 是矩形数据结构。 -
我不知道 Ananda Mahto...我只知道我必须删除这些项目..
标签: r