Я хотел бы изменить индекс следующего кода.Вместо того, чтобы в качестве индекса использовать «close», я хочу получить соответствующий x из функции.Как иногда в этом примере, даже если я предоставлю 4 curr, доступны только 3.Это означает, что я не могу добавить список в качестве индекса после циклического изменения размера.Спасибо за помощь.Я должен добавить, что даже с set_index (x) индекс остается «закрытым».
Функция daily_price_historical извлекает цены из открытого API.Есть ровно 7 столбцов, из которых я выбираю первый (закрыть).
Функция:
def daily_price_historical(symbol, comparison_symbol, all_data=False, limit=1, aggregate=1, exchange=''):
url = 'https://min-api.cryptocompare.com/data/histoday?fsym={}&tsym={}&limit={}&aggregate={}'\
.format(symbol.upper(), comparison_symbol.upper(), limit, aggregate)
if exchange:
url += '&e={}'.format(exchange)
if all_data:
url += '&allData=true'
page = requests.get(url)
data = page.json()['Data']
df = pd.DataFrame(data)
df.drop(df.index[-1], inplace=True)
return df
Код:
curr = ['1WO', 'ABX','ADH', 'ALX']
d_price = []
for x in curr:
try:
close = daily_price_historical(x, 'JPY', exchange='CCCAGG').close
d_price.append(close).set_index(x)
except:
pass
d_price = pd.concat(d_price, axis=1)
d_price = d_price.transpose()
print(d_price)
Вывод:
0
close 2.6100
close 0.3360
close 0.4843