Re: [問題] lubridate的使用問題

作者: celestialgod (天)   2016-11-18 00:22:35
※ 引述《hardy1127 (阿提)》之銘言:
:
: [問題類型]:
:
: 程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來)
:
: [軟體熟悉度]:
: 請把以下不需要的部份刪除
: 入門(寫過其他程式,只是對語法不熟悉)
:
: [問題敘述]:
: 我想要印出2015年,每個月的第一天和最後一天,前七個月都正常,
: 但第八個月之後,最後一天就會變成NA
: [程式範例]:
:
: year_counter = 2015
: mon_counter = 1
: while (year_counter < 2016){
: s_day = ymd("2015-01-01")
: e_day = ymd("2015-01-31")
: while (mon_counter < 13) {
: print(mon_counter)
: print("star is")
: print(s_day)
: print("end is")
: print(e_day)
: month(s_day) = month(s_day) + 1
: month(e_day) = month(s_day) + 1
: day(e_day) = day(s_day) - 1
: mon_counter = mon_counter + 1
: }
: year_counter = year_counter + 1
: }
:
: }環境敘述]:
:
: Version 0.99.903–2009-2016 RStudio, Inc.
: lubridate 1.6.0
:
: [關鍵字]:
:
: 選擇性,也許未來有用
:
這樣就全部列出來拉~~~ 不用用到迴圈
x1 <- seq(as.Date("2016-01-01"), length=12, by="1 month")
x2 <- seq(as.Date("2016-02-01"), length=12, by="1 month")
data.frame(firstDay = x1, lastDay = x2 - 1)
# firstDay lastDay
# 1 2016-01-01 2016-01-31
# 2 2016-02-01 2016-02-29
# 3 2016-03-01 2016-03-31
# 4 2016-04-01 2016-04-30
# 5 2016-05-01 2016-05-31
# 6 2016-06-01 2016-06-30
# 7 2016-07-01 2016-07-31
# 8 2016-08-01 2016-08-31
# 9 2016-09-01 2016-09-30
# 10 2016-10-01 2016-10-31
# 11 2016-11-01 2016-11-30
# 12 2016-12-01 2016-12-31
作者: psinqoo (零度空間)   2016-11-18 08:11:00
寫迴圈是最後一步
作者: hardy1127 (阿提)   2016-11-18 08:28:00
謝C大,實在有夠精簡!因為對語法不熟所以才用迴圈QQ(但是我也想知道我的邏輯哪裡出了問題...XD

Links booklink

Contact Us: admin [ a t ] ucptt.com