小编Lou*_*sen的帖子

当出生年份只有两个数字时,从个人数字计算年龄

我知道有很多类似的问题.但我不是一样的问!

我的问题是,我所看到的所有问题都是全年的生日,fx 04/05/1971(格式:%d /%m /%Y).

我的数据中的生日是丹麦的CPR号码(个人识别码),它们看起来像这样:

   ID
1901912222
0110841111
0404143333
1602032444
Run Code Online (Sandbox Code Playgroud)

注意:这些日期就是例子.我有成千上万的行,它是所有年龄段的人,也超过100(但通常不超过17).

第1和第2个数字:出生日期第3个和第4个数字:出生月份第5个和第6个数字:出生年份最后4个=连续数字.

所以这给了我生日(和年龄):

   ID         birthdate      age
1901912222    19/09/91        26
0110841111    01/10/84        33
0404143333    04/04/14        103
1602024444    16/02/02        15
Run Code Online (Sandbox Code Playgroud)

所以格式为:%d%m%y [4位数的连续数]

所以最后四位数(序号)也有一些信息.他们告诉这个人是3岁还是103岁(现在我没有这一年).有关说明,请参见图片:

出生年份和序号

我不知道是否有任何帮助,但我有Excel代码:

= YEAR(NOW()) - 1-IF(DATE(YEAR(NOW()); MID(D12; 3; 2); LEFT(D12; 2))<= NOW(); MID(D12; 5; 2 )+ IF(左(右(D12; 4); 1)*1 <= 3; 1900; IF(AND(LEFT(RIGHT(D12; 4); 1)*1 = 4; MID(D12; 5; 2 )*1 <= 36); 2000; IF(AND(LEFT(RIGHT(D12; 4); 1)*1 = 4; MID(D12; 5; 2)*1> = 37); 1900; IF(AND (左(右(D12; 4); 1)*1> …

r date-of-birth

5
推荐指数
1
解决办法
137
查看次数

根据规则删除多个列和行中的重复项

假设我有以下数据:

dt <- data.frame(id=c(1,1,2,2,3,3,3,4,5,5,5,5,6,7,7),
             rk=c("a","a","b","b","c","y","c","d","e","y","e","e","f","g","h"),
             .id=c("df1", "df9", "df5", "df16", "df2", "df11", "df11", "df4", "df9", "df4", "df6", "df3", "df16", "df2", "df9"))
Run Code Online (Sandbox Code Playgroud)

所以我的数据看起来像这样:

id   rk  .id
1    a   df1
1    a   df9
2    b   df5
2    b  df16
3    c   df2
3    y  df11
3    c  df11
4    d   df4
5    e   df9
5    y   df4
5    e   df6
5    e   df3
6    f  df16
7    g   df2
7    h   df9
Run Code Online (Sandbox Code Playgroud)

但我只想要一个每双行IDRK.因此在示例中,id = 5可以有两行:一行rk = e,另一行rk …

r duplicates conditional-statements

3
推荐指数
1
解决办法
49
查看次数