0
足夠簡單的問題。我有美國國庫券利率數據,有兩列- 1)日期和2)利率。這些數據的範圍可以追溯到1960年。我希望從1990年開始,即根據日期對利率進行分組。如何根據R中的日期子集數據?
代碼: -
data = read.csv("3mt-bill.csv")
rates= ?
所以,我只想國庫券利率的載體,但是從1990年起。 我該怎麼寫條件?
足夠簡單的問題。我有美國國庫券利率數據,有兩列- 1)日期和2)利率。這些數據的範圍可以追溯到1960年。我希望從1990年開始,即根據日期對利率進行分組。如何根據R中的日期子集數據?
代碼: -
data = read.csv("3mt-bill.csv")
rates= ?
所以,我只想國庫券利率的載體,但是從1990年起。 我該怎麼寫條件?
我們需要先「日期」轉換爲Date
類,與format
提取年,檢查它是否比1990年更大,子集「價格」基於該邏輯vector
data$Rate[format(as.Date(data$Date), "%Y") >= 1990]
如果「日期」欄只包括一年的部分,很容易
data$Rate[data$Date >= 1990]
以防萬一,如果我們需要tidyverse
library(tidyverse)
data %>%
filter(year(ymd(Date)) >= 1990) %>%
select(Rate)
或者使用data.table
library(data.table)
setDT(data)[year(as.IDate(Date)) >= 1990, Rate]
第一個本身工作。萬分感謝! – ricksanchez
是否日期列僅包含一年?那麼'class(data $ Date)'返回什麼? – neilfws
不,日期的格式爲dd/mm/year。和類(數據$日期)返回空值。 – ricksanchez
這將有助於查看數據的前幾行。 NULL表示沒有名爲Date的列。 – neilfws