Как упорядочить значения в наборе данных в базах данных? и исправьте ошибку индекса -1 за пределами границ

#python #pandas #dataframe #pyspark #outliers

Вопрос:

Я только начал с Python и науки о данных, и сейчас я очень застрял. Поэтому мне нужно оценить выбросы в этом наборе данных. Код приведен ниже

 from pandasql import sqldf
q="""SELECT DISTINCT site, utility FROM df_read;"""
pysqldf = lambda q: sqldf(q, globals())
a_df = pysqldf(q)
a_ls = a_df.values.tolist()
print(a_ls)

def plot_df(df, x, y,y1,y2,y3, title="", xlabel='Date', ylabel='Value', dpi=100):
    plt.figure(figsize=(16,5), dpi=dpi)
    plt.plot(x, y, color='tab:blue')
    plt.plot(x,y1,color='tab:red')
    plt.plot(x,y2,color='tab:red')
    plt.plot(x,y3,color='tab:red')
    plt.gca().set(title=title, xlabel=xlabel, ylabel=ylabel)
    plt.show()

from scipy.stats.mstats import winsorize
def outlier_v2(): 
  df_r.reset_index(inplace=True)
  df_r.drop(['index'],axis=1,inplace=True)
  df_r["converted_value_adjusted"] = df_r["converted_value"]
  winsorized_value = winsorize(df_r['converted_value'], limits=[0.00, 0.05])
  df_r["converted_value_adjusted"] = winsorized_value

df_all = []
for entry in a_ls:
  df_r = df_read[(df_read["site"]==entry[0]) amp; (df_read["utility"] == entry[1])].copy()
  tags = df_r['tag'].unique()
  for tag_v in tags:
    df_r = df_read[(df_read["site"]==entry[0]) amp; (df_read["utility"] == entry[1]) amp; (df_read["tag"] == tag_v)].copy()
    outlier_v2()
results = spark.createDataFrame(results)
display(results)
 

Ошибка, которую я получаю, заключается в следующем:

Ошибка индекса: индекс -1 выходит за рамки для оси 0 с размером 0

Я действительно ничего не понимаю прямо сейчас