выровнять возвращает кортеж вместо Pandas DataFrame - PullRequest
0 голосов
/ 08 июня 2018

Я немного озадачен, потому что ожидал, что следующий код создаст Pandas DataFrame или Series и вместо этого вернет кортеж.

import pandas_datareader.data as web
import random
import pandas as pd

start_date = '2018-01-01'
end_date = '2018-06-06'
SPY = web.DataReader('SPY', 'yahoo', start_date, end_date)
SPY = SPY[['Adj Close']]
SPY.columns = ['Price']

SPY1 = SPY.iloc[random.sample(range(len(SPY.index)), 80), ]
SPY2 = SPY.iloc[random.sample(range(len(SPY.index)), 80), ]

SPY3 = SPY1.align(SPY2, join = 'inner', axis = 0)

type(SPY3)
tuple

Я могу преобразовать кортеж в Series следующим образом:

SPY3 = pd.Series(SPY3[0])

Тем не менее, я удивляюсь, почему кортеж возвращается в первую очередь.

Ваш совет будет оценен.

1 Ответ

0 голосов
/ 08 июня 2018

Метод align возвращает кортеж в соответствии с документацией: http://pandas.pydata.org/pandas-docs/version/0.22/generated/pandas.DataFrame.align.html

Возвращает: (слева, справа): (DataFrame, тип другого)

(left, right) это кортеж

...