抱歉,真不知道该怎么给这个问题找个更好的标题.
第1部分:
总之,我在R中有一个数据框架,看起来是这样的:
species date
1 a 2015-11-10
2 a 2015-11-10
3 a 2015-11-10
4 b 2015-11-10
5 a 2015-11-11
6 b 2015-11-11
7 a 2015-11-12
8 a 2015-11-12
9 c 2015-11-12
10 c 2015-11-12
11 a 2015-11-13
12 a 2015-11-13
13 b 2015-11-13
14 b 2015-11-13
15 c 2015-11-13这基本上是我每天遇到的动物的记录。在一个日期内,有时一个物种出现不止一次,这是因为我看到它不止一次在那一天。
现在,我想在同一天内删除对同一只动物的额外目击,这样我就得到了一个数据框架,如下所示:
species date
1 a 2015-11-10
2 b 2015-11-10
3 a 2015-11-11
4 b 2015-11-11
5 a 2015-11-12
6 c 2015-11-12
7 a 2015-11-13
8 b 2015-11-13
9 c 2015-11-13我怎样才能做到这一点?作为一个新的R用户,我完全搞不懂.:(
顺便说一下,实际上在实际数据框架中有更多与问题无关的列,但我希望保留这些列。此外,我希望确保R将日期列中的日期作为日期数据对象,而不是字符串或其他任何东西。
第2部分:
使用第1部分末尾的数据框架,我想将其转换为如下所示的数据框架:
a b c
2015-11-10 1 1 0
2015-11-11 1 1 0
2015-11-12 1 0 1
2015-11-13 1 1 11和0基本上代表是和否(但我想把它们保持为整数)。所以这个新的数据框架只是记录了我是否在某个特定的日期见过一个特定的动物物种。为此,我也希望把日期(在左边第一栏中)作为日期数据类型在R中处理。我是如何做到这一点的?请注意,,,我有很多物种,而不仅仅是a,b,c。所以解决方案必须动态地调整我实际看到的物种的数量。
谢谢你的帮助!
发布于 2015-11-25 21:42:36
我们可以使用unique获取唯一的行,然后使用table获取计数。
Un1 <- unique(df1)
(table(Un1[2:1])> 0L) + 0L编辑:基于@thelatemail的评论。
https://stackoverflow.com/questions/33926843
复制相似问题