在 macOS Apple Silicon (ARM64) 上编译、安装 X-13ARIMA-SEAT 并在 sm.tsa.x13_arima_analysis() 中使用它

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

我正在努力在带有 m3 芯片的 Mac 上编译和使用 X-13ARIMA-SEAT,并在

statsmodels
中使用 sm.tsa.x13_arima_analysis(s, x12path='/usr/local/bin/x13as') 来调用它。终于成功了,现在一步步分享方法。

另外,我想知道如何使用Python库如statsmodels或其他季节性调整工具使用tramo-seats来季节性调整数据?

python macos statsmodels seasonal-adjustment x13
1个回答
0
投票

首先,我们可以从 macOS Apple Silicon (ARM64) 的链接 SourceForge 下载 X-13ARIMA-SEATS 二进制文件并安装。详细步骤如下:

第 1 步:下载适用于 macOS Apple Silicon 的 X-13ARIMA-SEATS

从 SourceForge 下载适用于 macOS Apple Silicon 的 X-13ARIMA-SEATS 二进制文件:

curl -L -o x13as-mac-arm64.tar.gz https://sourceforge.net/projects/gretl/files/x13as/x13as-mac-arm64.tar.gz/download

第2步:解压下载的文件

解压下载的tar.gz文件:

重击:

tar -xzvf x13as-mac-arm64.tar.gz

第3步:将可执行文件移动到系统路径

将解压后的x13as可执行文件移至

/usr/local/bin
目录并确保其具有执行权限:

重击:

sudo mv x13as /usr/local/bin/x13as
sudo chmod +x /usr/local/bin/x13as

第 4 步:测试安装

测试x13as安装成功:

重击:

x13as

如果一切顺利,您应该看到以下错误消息,表明二进制文件工作正常:

enter image description here

information on how to run X-13ARIMA-SEATS.
X-13ARIMA-SEATS Seasonal Adjustment Program
Version Number 1.1 Build 61
Execution began Jul 14, 2022 19.38.34
ERROR: Must specify either an input specification file name
(-i infile or infile) or an input metafile name (-m metafile).
See Section 2 of the X-13ARIMA-SEATS Reference Manual for more
information on how to run X-13ARIMA-SEATS.

第5步:在Python中使用X-13ARIMA-SEATS

我们可以使用 statsmodels 库在 Python 中调用 X-13ARIMA-SEATS

import statsmodels.api as sm
import pandas as pd
import numpy as np

# Generate test data
np.random.seed(0)
n_periods = 120 # 10 years, 12 months per year
date_range = pd.date_range(start='2010-01-01', periods=n_periods, freq='M')
seasonal_pattern = np.sin(2 * np.pi * date_range.month / 12)
trend = np.linspace(0, 10, n_periods)
noise = np.random.normal(0, 0.5, n_periods)
data = 10 + trend + seasonal_pattern + noise

# Create time series data
s = pd.Series(data, index=date_range)

# Seasonal Adjustment using X-13ARIMA-SEATS
res = sm.tsa.x13_arima_analysis(s, x12path='/usr/local/bin/x13as')

# Print Results
print(res.summary())

# Plot the Original Data and Seasonally Adjusted Data
import matplotlib.pyplot as plt

fig, ax = plt.subplots(figsize=(12, 8))
s.plot(ax=ax, label='Original Data')
res.seasadj.plot(ax=ax, label='Seasonally Adjusted Data')
plt.legend()
plt.title('Seasonal Adjustment using X-13ARIMA-SEATS')
plt.show()

出:

enter image description here

通过这些步骤,您应该能够在 macOS 上成功安装和使用 X-13ARIMA-SEATS。

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