第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

以星期,月,季度和年為單位獲取日期之間的差異

以星期,月,季度和年為單位獲取日期之間的差異

素胚勾勒不出你 2019-08-02 16:37:19
以星期,月,季度和年為單位獲取日期之間的差異我有兩個(gè)日期let's說14.01.2013和26.03.2014。我希望以周(?),月(在示例14中),季度(4)和年(1)中得到這兩個(gè)日期之間的差異。你知道最好的方法嗎?
查看完整描述

3 回答

?
交互式愛情

TA貢獻(xiàn)1712條經(jīng)驗(yàn) 獲得超3個(gè)贊

那這個(gè)呢:


# get difference between dates `"01.12.2013"` and `"31.12.2013"`


# weeks

difftime(strptime("26.03.2014", format = "%d.%m.%Y"),

strptime("14.01.2013", format = "%d.%m.%Y"),units="weeks")

Time difference of 62.28571 weeks


# months

(as.yearmon(strptime("26.03.2014", format = "%d.%m.%Y"))-

as.yearmon(strptime("14.01.2013", format = "%d.%m.%Y")))*12

[1] 14


# quarters

(as.yearqtr(strptime("26.03.2014", format = "%d.%m.%Y"))-

as.yearqtr(strptime("14.01.2013", format = "%d.%m.%Y")))*4

[1] 4


# years

year(strptime("26.03.2014", format = "%d.%m.%Y"))-

year(strptime("14.01.2013", format = "%d.%m.%Y"))

[1] 1

as.yearmon()并且as.yearqtr()在包裝中zoo。year()在包中l(wèi)ubridate。你怎么看?


查看完整回答
反對 回復(fù) 2019-08-02
?
qq_遁去的一_1

TA貢獻(xiàn)1725條經(jīng)驗(yàn) 獲得超8個(gè)贊

所有現(xiàn)有的答案都是不完美的(IMO),要么對所需的輸出做出假設(shè),要么不為所需的輸出提供靈活性。

根據(jù)OP中的示例和OP所述的預(yù)期答案,我認(rèn)為這些是您正在尋找的答案(以及一些可以輕松推斷的其他示例)。

(這只需要基地R,不需要?jiǎng)游飯@或勞動(dòng)力)

轉(zhuǎn)換為Datetime對象

date_strings = c("14.01.2013", "26.03.2014")datetimes = strptime(date_strings, format = "%d.%m.%Y") # convert to datetime objects

天數(shù)的差異

您可以在幾天內(nèi)使用差異來獲得我們以后的一些答案

diff_in_days = difftime(datetimes[2], datetimes[1], units = "days") # daysdiff_in_days#Time difference of 435.9583 days

周的差異

差異周是一個(gè)特殊的情況下,units = "weeks"difftime()

diff_in_weeks = difftime(datetimes[2], datetimes[1], units = "weeks") # weeksdiff_in_weeks#Time difference of 62.27976 weeks

請注意,這與將diff_in_days除以7(一周7天)相同

as.double(diff_in_days)/7#[1] 62.27976

多年的差異

使用類似的邏輯,我們可以從diff_in_days中獲得數(shù)年

diff_in_years = as.double(diff_in_days)/365 # absolute yearsdiff_in_years#[1] 1.194406

你似乎期待多年來的差異是“1”,所以我假設(shè)你只想計(jì)算絕對日歷年或其他東西,你可以通過使用它輕松做到 floor()

# get desired output, given your definition of 'years'floor(diff_in_years)#[1] 1

宿舍的差異

# get desired output for quarters, given your definition of 'quarters'floor(diff_in_years * 4)#[1] 4

幾個(gè)月的差異

可以將其計(jì)算為diff_years的轉(zhuǎn)換

# months, defined as absolute calendar months (this might be what you want, given your question details)months_diff = diff_in_years*12floor(month_diff)#[1] 14

我知道這個(gè)問題已經(jīng)過時(shí)了,但考慮到我現(xiàn)在仍然需要解決這個(gè)問題,我想我會(huì)加上我的答案。希望能幫助到你。


查看完整回答
反對 回復(fù) 2019-08-02
?
慕村9548890

TA貢獻(xiàn)1884條經(jīng)驗(yàn) 獲得超4個(gè)贊

幾周,你可以使用功能difftime

date1 <- strptime("14.01.2013", format="%d.%m.%Y")date2 <- strptime("26.03.2014", format="%d.%m.%Y")difftime(date2,date1,units="weeks")Time difference of 62.28571 weeks

但是difftime持續(xù)數(shù)周不起作用。
以下是cut.POSIXt用于這些持續(xù)時(shí)間的非常不理想的解決方案,但您可以解決它:

seq1 <- seq(date1,date2, by="days")nlevels(cut(seq1,"months"))15nlevels(cut(seq1,"quarters"))5nlevels(cut(seq1,"years"))2

然而,這是您的時(shí)間間隔跨越的月數(shù),季度或年數(shù),而不是您的時(shí)間間隔的持續(xù)時(shí)間,以月,季度,年為單位(因?yàn)槟切]有恒定的持續(xù)時(shí)間)??紤]到你對@SvenHohenstein做出的評論,我認(rèn)為你可以用它nlevels(cut(seq1,"months")) - 1來實(shí)現(xiàn)你想要實(shí)現(xiàn)的目標(biāo)。


查看完整回答
反對 回復(fù) 2019-08-02
  • 3 回答
  • 0 關(guān)注
  • 722 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)