Spaces:
Running
Running
Update app.py
Browse files
app.py
CHANGED
@@ -153,7 +153,7 @@ def _standardize_columns(df: pd.DataFrame) -> pd.DataFrame:
|
|
153 |
if len(df) > 0:
|
154 |
# λ μ μ°ν λ μ§ λ³ν
|
155 |
try:
|
156 |
-
# μν νμΈ
|
157 |
sample = str(df["date"].iloc[0])
|
158 |
|
159 |
# YYYYMM νμ (6μ리)
|
@@ -214,9 +214,33 @@ def load_data() -> pd.DataFrame:
|
|
214 |
st.error(f"νμ μ»¬λΌ λλ½: {', '.join(missing)} β νμΌ μ»¬λΌλͺ
μ νμΈνμΈμ.")
|
215 |
st.stop()
|
216 |
|
|
|
|
|
|
|
217 |
# λ μ§ λ³ν μ ν λ°μ΄ν° μ νμΈ
|
218 |
before_date_convert = len(df)
|
219 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
220 |
after_date_convert = df.dropna(subset=["date"]).shape[0]
|
221 |
if before_date_convert != after_date_convert:
|
222 |
st.sidebar.warning(f"λ μ§ λ³ν μ€ {before_date_convert - after_date_convert}κ° νμ΄ μ μΈλμμ΅λλ€.")
|
|
|
153 |
if len(df) > 0:
|
154 |
# λ μ μ°ν λ μ§ λ³ν
|
155 |
try:
|
156 |
+
# μν νμΈ (λ¬Έμμ΄λ‘ λ³ννμ¬ μμ νκ² μ²λ¦¬)
|
157 |
sample = str(df["date"].iloc[0])
|
158 |
|
159 |
# YYYYMM νμ (6μ리)
|
|
|
214 |
st.error(f"νμ μ»¬λΌ λλ½: {', '.join(missing)} β νμΌ μ»¬λΌλͺ
μ νμΈνμΈμ.")
|
215 |
st.stop()
|
216 |
|
217 |
+
# λ μ§ λ°μ΄ν° νμΈ
|
218 |
+
st.sidebar.write("λ μ§ μ»¬λΌ λ°μ΄ν° μν:", df["date"].head().tolist())
|
219 |
+
|
220 |
# λ μ§ λ³ν μ ν λ°μ΄ν° μ νμΈ
|
221 |
before_date_convert = len(df)
|
222 |
+
|
223 |
+
# κΈ°μ‘΄ dateκ° λ¬Έμμ΄μ΄κ³ λ
μ νμ(YYYYMM)μΈ κ²½μ° μ²λ¦¬
|
224 |
+
if pd.api.types.is_object_dtype(df["date"]):
|
225 |
+
try:
|
226 |
+
# μ«μλ‘λ§ κ΅¬μ±λ λ¬Έμμ΄μΈμ§ νμΈ
|
227 |
+
is_numeric = df["date"].str.isnumeric().all()
|
228 |
+
|
229 |
+
# λ§μ½ YYYYMM νμμ΄λ©΄ (6μ리 μ«μ)
|
230 |
+
if is_numeric and df["date"].str.len().mean() >= 6:
|
231 |
+
# YYYYMM νμ λ³ν
|
232 |
+
df["date"] = pd.to_datetime(df["date"].astype(str), format="%Y%m")
|
233 |
+
# μμ λ§μ§λ§ λ λ‘ μ€μ
|
234 |
+
df["date"] = df["date"] + pd.offsets.MonthEnd(0)
|
235 |
+
else:
|
236 |
+
# μΌλ° λ³ν
|
237 |
+
df["date"] = pd.to_datetime(df["date"], errors="coerce")
|
238 |
+
except:
|
239 |
+
# μΌλ° λ³ν
|
240 |
+
df["date"] = pd.to_datetime(df["date"], errors="coerce")
|
241 |
+
|
242 |
+
# λ μ§ λ³ν ν λ°μ΄ν° νμΈ
|
243 |
+
st.sidebar.write("λ μ§ λ³ν ν μν:", df["date"].head().tolist())
|
244 |
after_date_convert = df.dropna(subset=["date"]).shape[0]
|
245 |
if before_date_convert != after_date_convert:
|
246 |
st.sidebar.warning(f"λ μ§ λ³ν μ€ {before_date_convert - after_date_convert}κ° νμ΄ μ μΈλμμ΅λλ€.")
|