首页 > 解决方案 > R列表上的算术运算

问题描述

我有一个data.frame数据类型的变量,list其值是Date格式的。如何计算来自 2 个不同变量的两个日期之间的差异,并将其命名YrsEmployed和数据类型list

请注意,StartHireDate以下EndHireDateDate格式化的。我只是不知道如何将它们显示为Date

> > print(HiringDateInfo)
          X_id                                                     StartHireDate
1 530eed6dbfb5c1a8e77cb0fc                            NA, NA, NA, NA, NA, NA, NA, NA, NA, NA
2 5391a88bbfb5c1b1fed0bcf4                            NA, NA, NA, NA, NA, NA, NA, NA, NA, NA
3 53a0fa3cf1f17922a0287add                            NA, NA, NA, NA, NA, NA, NA, NA, NA, NA
4 53abd15cf1f179c3e81a3fbe                            NA, NA, NA, NA, NA, NA, NA, NA, NA, NA
5 54dd934ff1f179acfb7b0a2f 14304, 15095, 15279, 15431, 15492, 15645, 15859, NA, 16222, 16375
                                                        EndHireDate
1                            NA, NA, NA, NA, NA, NA, NA, NA, NA, NA
2                            NA, NA, NA, NA, NA, NA, NA, NA, NA, NA
3                            NA, NA, NA, NA, NA, NA, NA, NA, NA, NA
4                            NA, NA, NA, NA, NA, NA, NA, NA, NA, NA
5 15063, 15308, 15338, 15490, 15613, 15855, 16116, 16159, 16312, NA

我期待一个新的data.frame一起YrsEmployed

YrsEmployed
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA
2.07945205479452,0.583561643835616,0.161643835616438,0.161643835616438,0.3315068,49315069,0.575342465753425,0.704109589041096,NA,0.246575342465753,NA

标签: rlistdate-arithmeticarithmetic-expressions

解决方案


这是我为解决它所做的。1.我定义了一个函数function(x, y) list(((x-y)/365)*1) 2.然后mapply用来附带想要的新变量mapply(fdiff, HiringDateInfo$EndHireDate, HiringDateInfo$StartHireDate)


推荐阅读