Я хотел бы преобразовать кадр данных pandas из 11 столбцов и 9000 по строкам в серию и представить ее функцию автокорреляции и частичной автокорреляции, которые в качестве входных данных принимают ряд.10_представляют собой лаг = 10, 8_последовательнее - лаг = 8 и интерес - это где лаг = 0.Каждая строка представляет 1 данные.
Я хотел бы спросить, возможно ли преобразовать мой df в серию или есть какие-то другие методы для получения acf и pacf?Спасибо!
Вам удалось получить серию, подобную этой, как я могу построить ACF и PACF, используя это?
0 [1.0, 1.0, 1.0, 2.0, 2.0, 1.0, 1.0, 1.0, 8.0, ...
1 [15.0, 1.0, 4.0, 2.0, 1.0, 5.0, 1.0, 1.0, 2.0,...
2 [2.0, 1.0, 100.0, 1.0, 5.0, 2.0, 10.0, 1.0, 1....
3 [3.0, 3.0, 7.0, 5.0, 2.0, 1.0, 1.0, 14.0, 1.0,...
4 [10.0, 1.0, 7.0, 2.0, 1.0, 2.0, 1.0, 4.0, 2.0,...
5 [1.0, 42.0, 4.0, 1.0, 2.0, 2.0, 1.0, 67.0, 2.0...
6 [1.0, 13.0, 2.0, 2.0, 2.0, 2.0, 1.0, 3.0, 1.0,...
7 [1.0, 5.0, 3.0, 2.0, 2.0, 15.0, 1.0, 3.0, 2.0,...
8 [3.0, 1.0, 13.0, 2.0, 15.0, 30.0, 14.0, 2.0, 1...
9 [1.0, 4.0, 2.0, 15.0, 30.0, 30.0, 4.0, 1.0, 1....
10 [42.0, 100.0, 30.0, 30.0, 30.0, 25.0, 67.0, 16...
dtype: object
Мой код выглядит следующим образом:
a= np.array([trade_10before,trade_9before,trade_8before,trade_7before,trade_6before,trade_5before,trade_4before,trade_3before,trade_2before,trade_1before,trade])
a = a.tolist()
a = pd.Series(a)
plot_acf(a)
plot_pacf(a)
plt.show()
Получил эту ошибку:
During handling of the above exception, another exception occurred:
ValueError Traceback (most recent call last)
<ipython-input-29-a6cd38689337> in <module>()
70 })
71 df_acf1_past = df_acf1_past[new_order]
---> 72 df_acf1_past = pd.Series(df_acf1_past.iloc[:,:])
73 print(df_acf1_past)
74 plot_acf(df_acf1_past)
/usr/local/envs/py3env/lib/python3.5/site-packages/pandas/core/series.py in __init__(self, data, index, dtype, name, copy, fastpath)
262 else:
263 data = _sanitize_array(data, index, dtype, copy,
--> 264 raise_cast_failure=True)
265
266 data = SingleBlockManager(data, index, fastpath=True)
/usr/local/envs/py3env/lib/python3.5/site-packages/pandas/core/series.py in _sanitize_array(data, index, dtype, copy, raise_cast_failure)
3275 raise Exception('Data must be 1-dimensional')
3276 else:
-> 3277 subarr = _asarray_tuplesafe(data, dtype=dtype)
3278
3279 # This is to prevent mixed-type Series getting all casted to
/usr/local/envs/py3env/lib/python3.5/site-packages/pandas/core/common.py in _asarray_tuplesafe(values, dtype)
400 except ValueError:
401 # we have a list-of-list
--> 402 result[:] = [tuple(x) for x in values]
403
404 return result
ValueError: cannot copy sequence with size 11 to array axis with dimension 9683