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}κ° νμ΄ μ μΈλμμ΅λλ€.")
|