在 R 中命名列
Naming a column in R
我对编码还很陌生,所以这个解决方案可能很简单;但是,我无法通过搜索找到合适的答案。
我正在使用 quantmod
包。
我刚刚使用 getFX
变量下载了数据。我已将它分配到我的全局环境中。
我想在 ggplot
中绘制它,但我遇到了问题。使用绘图功能效果很好。但是,当我试图通过 str()
功能找出列名是什么时,我只得到一个带有标题的列。日期字段为空,结构为 POSIXct[1:1]
。如何为该日期列加标题,以便我可以将其绘制在 ggplot
中?
我尝试了以下但没有成功
JPYchart <- getFX("USD/JPY", from="2013-05-05", header=FALSE)
我的印象是 header 会将我的列命名为 v1、v2 等,因为它们未命名但它们继续保持空白。
这对我有用
library(quantmod)
library(ggplot2)
# getFX returns USDJPY xts object
getFX("USD/JPY", from="2013-05-05", header=FALSE)
str(USDJPY)
# An ‘xts’ object on 2013-05-05/2016-07-12 containing:
# Data: num [1:1165, 1] 99 99.2 99.1 98.9 99.1 ...
# - attr(*, "dimnames")=List of 2
# ..$ : NULL
# ..$ : chr "USD.JPY"
# Indexed by objects of class: [Date] TZ: UTC
# xts Attributes:
# List of 2
# $ src : chr "oanda"
# $ updated: POSIXct[1:1], format: "2016-07-12 19:20:01"
# convert USDJPY to a data.frame
df <- as.data.frame(USDJPY)
df$date <- as.Date(rownames(df))
str(df)
# 'data.frame': 1165 obs. of 2 variables:
# $ USD.JPY: num 99 99.2 99.1 98.9 99.1 ...
# $ date : Date, format: "2013-05-05" "2013-05-06" "2013-05-07" "2013-05-08" ...
# plot with ggplot
ggplot(data = df, aes(x = date, y = df$USD.JPY)) +
geom_line()
我对编码还很陌生,所以这个解决方案可能很简单;但是,我无法通过搜索找到合适的答案。
我正在使用 quantmod
包。
我刚刚使用 getFX
变量下载了数据。我已将它分配到我的全局环境中。
我想在 ggplot
中绘制它,但我遇到了问题。使用绘图功能效果很好。但是,当我试图通过 str()
功能找出列名是什么时,我只得到一个带有标题的列。日期字段为空,结构为 POSIXct[1:1]
。如何为该日期列加标题,以便我可以将其绘制在 ggplot
中?
我尝试了以下但没有成功
JPYchart <- getFX("USD/JPY", from="2013-05-05", header=FALSE)
我的印象是 header 会将我的列命名为 v1、v2 等,因为它们未命名但它们继续保持空白。
这对我有用
library(quantmod)
library(ggplot2)
# getFX returns USDJPY xts object
getFX("USD/JPY", from="2013-05-05", header=FALSE)
str(USDJPY)
# An ‘xts’ object on 2013-05-05/2016-07-12 containing:
# Data: num [1:1165, 1] 99 99.2 99.1 98.9 99.1 ...
# - attr(*, "dimnames")=List of 2
# ..$ : NULL
# ..$ : chr "USD.JPY"
# Indexed by objects of class: [Date] TZ: UTC
# xts Attributes:
# List of 2
# $ src : chr "oanda"
# $ updated: POSIXct[1:1], format: "2016-07-12 19:20:01"
# convert USDJPY to a data.frame
df <- as.data.frame(USDJPY)
df$date <- as.Date(rownames(df))
str(df)
# 'data.frame': 1165 obs. of 2 variables:
# $ USD.JPY: num 99 99.2 99.1 98.9 99.1 ...
# $ date : Date, format: "2013-05-05" "2013-05-06" "2013-05-07" "2013-05-08" ...
# plot with ggplot
ggplot(data = df, aes(x = date, y = df$USD.JPY)) +
geom_line()