如何在 R 中更改 dimname

How change dimname in R

我的程序中有一个 class table "xts" 和 "zoo" 如下

> head(BRA$Adj.Close)

           Adj.Close
2005-01-03     25722
2005-01-04     24848
2005-01-05     24692
2005-01-06     24367
2005-01-07     24747
2005-01-10     24292

我需要在这个 table 中添加 dimname "Date",结果是

 Date         Adj.Close
2005-01-03     25722
2005-01-04     24848
2005-01-05     24692
2005-01-06     24367
2005-01-07     24747
2005-01-10     24292

我该怎么做?

看起来你想要的Date列实际上是你的数据框的行名(如果它是一个数据框,那就是)。

如果是这样,您可以将行名称设为列:

yourdataframe[2] = row.names(yourdataframe)

然后重命名列:

names(yourdataframe)[2] = "Dates"

如果它还不是数据框,请将其转换为一个。

你不能,日期更像是行名而不是​​列。

您可以将您的对象强制转换为数据框,然后添加一个列,例如:

x <- as.data.frame(BRA$Adj.Close)
x$Date <- index(BRA$Adj.Close)

要将 xts 对象转换为 data.frame

  data.frame(Date = index(BRA$Adj.Close), 
             coredata(BRA$Adj.Close))