Мне нужна помощь со следующим фрагментом кода
def query(self, inputs=[], start=None, end=None):
fields = ["{0}={1}".format(c, self.getname(c)) for c in inputs]
dframes = []
start_time = time.time()
for file in self.mal_files:
if ((start is not None and start <= file.date) or start is None) and ((end is not None and file.date <= end) or end is None):
ok, df = self.get_data(file, fields)
if ok:
if len(dframes) == 0:
self.res.query_date_start = file.date
self.res.query_date_end = file.date
self.res.number_mal_files_read += 1
dframes.append(df)
if len(dframes) > 0:
raw_data_pandas = pd.DataFrame(pd.concat(dframes))
sc = SparkContext()
sql = SQLContext(sc)
raw_data_spark_sql = sql.createDataFrame(pd.concat(dframes))
Этот код выполняет запрос к различным файлам, и пока он работает нормально.Также работает конкат разных файлов с пандой.Но мне нужны сцепленные кадры данных pandas в виде спарк-данных SQL, и здесь проблема.Я получаю следующее сообщение об ошибке: py4j.Py4JException: Метод getstate ([]) не существует Возможно, это связано с определением контекста искры (sc).
Я использую pyspark и безуспешно пытался определить контекст искры внутри и снаружи функции.Я не уверен, так что спасибо за любую помощь!