20 using System.Collections.Generic;
29 where T :
BaseChain<TContract, TContractsCollection>
33 private static readonly IEnumerable<string> _flattenedDfIndexNames =
new[] {
"canonical",
"symbol" };
35 private readonly Lazy<PyObject> _dataframe;
36 private readonly
bool _flatten;
55 : this(default, flatten)
66 _dataframe =
new Lazy<PyObject>(InitializeDataFrame, isThreadSafe:
false);
69 private PyObject InitializeDataFrame()
71 if (!PythonEngine.IsInitialized)
76 var dataFrames = this.Select(kvp => kvp.Value.DataFrame).ToList();
80 var canonicalSymbols = this.Select(kvp => kvp.Key);
81 return PandasConverter.ConcatDataFrames(dataFrames,
keys: canonicalSymbols, names: _flattenedDfIndexNames, sort:
false);