Quandl时间序列与熊猫的相关性

时间:2020-11-07 11:46:56

标签: python pandas quandl

我想从Quandl中导入两个时间序列,并希望找到它们之间的相关性。我发现了有关熊猫的信息,并尝试使用corr函数,但是我总是收到错误ValueError: The truth value of a DataFrame is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().,我真的不知道这段代码出了什么问题,我打印了数组,它们看起来还不错。

这是我的代码:

import pandas as pd
import quandl

quandl.ApiConfig.api_key = "XXX"

series1 = quandl.get("BUNDESBANK/BBK01_WT5511", start_date="2017-01-01")
series2 = quandl.get("FRED/DCOILBRENTEU", start_date="2017-01-01")

print(series1.corr(series2))

1 个答案:

答案 0 :(得分:0)

我遇到了同样的错误。事实证明,问题在于我如何传递 API 密钥。具体来说,为了避免在我使用的代码中暴露明文 API 密钥

api_key = pd.read_csv('API Key File', header=None)

读取我的 API 密钥,然后将其传递给 Quandl:

Quandl.ApiConfig.api_key = api_key

然后我得到了和你一样的错误:DataFrame 的真值不明确。

当我深入研究时,我意识到 pd.read_csv 是问题所在:type(api_key) 给出了一个对象,而不是一个字符串。因此,我切换到以下设置 API 密钥:

with open('API Key File') as f:
    api_key = f.readline()

然后 type(api_key) 返回一个字符串,并且您上面的代码完全相同,然后没有错误。希望这会有所帮助!