使用月份格式绘制线条

问题描述 投票:0回答:1

我有一个数据集,其中有一个变量

month
,其显示格式为
%tdMon-YY
(例如 Jan-2024)和一个整数格式的汇率变量。我需要在 2020 年 3 月绘制两者的折线图和一条垂直线。我使用了以下代码:

line exchange_rate month, xline("Mar-2020")

但这给了我一个错误,我认为这是由于输入的“Mar-2020”不是字符串格式造成的。我已经为一个整数的年份变量做了相同的代码,如果我执行以下操作,那么它会运行良好。

line exchange_rate year, xline(2020)

我想这里唯一的问题是我如何引用 2020 年 3 月,所以任何人都可以帮助我理解如何使用正确的格式来做到这一点 (

%tdMon-YY
)。

datetime charts stata
1个回答
0
投票

正如一年中运行的代码所示,

xline()
需要数字参数。

您的日期变量显然是每日日期变量,但您只关心每月日期部分。快速计算表明,作为每日日期,2020 年 3 月 1 日是

. di mdy(3, 1, 2020)
21975

显然,您可以类似地获得 2020 年 3 月内的任何每日日期。所以你可以使用

xline(21975)

xline(`=mdy(3, 1, 2020)`)

或者您可以使用便利功能

td()

还有其他方法可以做到。

如果您的每日日期变量有例如日期,例如 ..., 2020 年 2 月 1 日、2020 年 3 月 1 日、2020 年 4 月 1 日,... 在某些时候,您会发现使用

mofd()
将其转换为每月日期变量很方便,甚至有必要。

没有办法理解 Stata 中不运行的日期处理方式

help datetime

© www.soinside.com 2019 - 2024. All rights reserved.