Spaces:
Sleeping
Sleeping
Fix: Readme
Browse files- streamlit_app.py +20 -5
streamlit_app.py
CHANGED
|
@@ -157,12 +157,27 @@ if st.session_state.authenticated:
|
|
| 157 |
df = get_filtered_data(collection, state_param, market_param, st.session_state.selected_period)
|
| 158 |
|
| 159 |
if not df.empty:
|
| 160 |
-
|
| 161 |
-
|
| 162 |
-
|
| 163 |
-
|
| 164 |
-
df_grouped
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 165 |
st.subheader(f"๐ Trends for {selected_state} ({'Market: ' + selected_market if market_wise else 'State'})")
|
|
|
|
| 166 |
if data_type == "Both":
|
| 167 |
scaler = MinMaxScaler()
|
| 168 |
df_grouped[['Scaled Price', 'Scaled Arrivals']] = scaler.fit_transform(df_grouped[['Modal Price (Rs./Quintal)', 'Arrivals (Tonnes)']])
|
|
|
|
| 157 |
df = get_filtered_data(collection, state_param, market_param, st.session_state.selected_period)
|
| 158 |
|
| 159 |
if not df.empty:
|
| 160 |
+
# Debug: Show data info
|
| 161 |
+
st.write(f"๐ Data fetched: {len(df)} rows")
|
| 162 |
+
|
| 163 |
+
# Group by date and aggregate
|
| 164 |
+
df_grouped = df.groupby('Reported Date', as_index=False).agg({
|
| 165 |
+
'Arrivals (Tonnes)': 'sum',
|
| 166 |
+
'Modal Price (Rs./Quintal)': 'mean'
|
| 167 |
+
})
|
| 168 |
+
|
| 169 |
+
st.write(f"๐ Unique dates after grouping: {len(df_grouped)}")
|
| 170 |
+
st.write(f"๐ฐ Price range: {df_grouped['Modal Price (Rs./Quintal)'].min():.2f} - {df_grouped['Modal Price (Rs./Quintal)'].max():.2f}")
|
| 171 |
+
|
| 172 |
+
# Only fill gaps if there are multiple data points
|
| 173 |
+
if len(df_grouped) > 1:
|
| 174 |
+
date_range = pd.date_range(start=df_grouped['Reported Date'].min(), end=df_grouped['Reported Date'].max(), freq='D')
|
| 175 |
+
df_grouped = df_grouped.set_index('Reported Date').reindex(date_range).rename_axis('Reported Date').reset_index()
|
| 176 |
+
df_grouped['Arrivals (Tonnes)'] = df_grouped['Arrivals (Tonnes)'].ffill().bfill()
|
| 177 |
+
df_grouped['Modal Price (Rs./Quintal)'] = df_grouped['Modal Price (Rs./Quintal)'].ffill().bfill()
|
| 178 |
+
|
| 179 |
st.subheader(f"๐ Trends for {selected_state} ({'Market: ' + selected_market if market_wise else 'State'})")
|
| 180 |
+
|
| 181 |
if data_type == "Both":
|
| 182 |
scaler = MinMaxScaler()
|
| 183 |
df_grouped[['Scaled Price', 'Scaled Arrivals']] = scaler.fit_transform(df_grouped[['Modal Price (Rs./Quintal)', 'Arrivals (Tonnes)']])
|