ceckenrode's picture
Update app.py
287667a
raw
history blame
1.05 kB
import streamlit as st
import pandas as pd
import plotly.express as px
import cx_Oracle as ora
import pandas as pd
from pandas_profiling import ProfileReport
st.title("File Upload and Profiling")
# Upload a CSV dataset
uploaded_file = st.file_uploader("Upload your dataset", type=["csv"])
if uploaded_file is not None:
# Load the dataset and display the first 5 rows
df = pd.read_csv(uploaded_file)
st.dataframe(df.head())
# Generate a treemap or sunburst plot based on data types
numerical_cols = df.select_dtypes(include=["float", "int"]).columns
categorical_cols = df.select_dtypes(include=["object"]).columns
if len(numerical_cols) >= 2:
fig = px.scatter_matrix(df, dimensions=numerical_cols)
st.plotly_chart(fig)
elif len(categorical_cols) >= 2:
fig = px.treemap(df, path=['CD_CDNG_C', 'RECORDCOUNTUNIQUEASSESSMENTLOINC'])
st.plotly_chart(fig)
else:
fig = px.sunburst(df, path=['CD_CDNG_C', 'RECORDCOUNTUNIQUEASSESSMENTLOINC'])
st.plotly_chart(fig)