niladridutta's picture
Create app.py
e13d3fb verified
import streamlit as st
import numpy as np
import pandas as pd
from ydata_profiling import ProfileReport
st.set_page_config(page_title='Automated Data Profiling')
st.title('AUTOMATED DATA PROFILING')
st.subheader('Upload your CSV file')
uploaded_file = st.file_uploader('Choose a CSV file', type={"csv"})
if uploaded_file is not None:
st.markdown('---')
@st.cache_data
def load_excel(file1):
df = pd.read_csv(file1, encoding='latin-1')
return df
df = load_excel(uploaded_file)
df = df.replace(np.nan,'',regex=True)
st.subheader('Data Preview')
st.dataframe(df.head(20))
profile = ProfileReport(df, title="Profiling Report")
profile.to_file("Profile_Report.html")
with open("Profile_Report.html", "rb") as file:
btn = st.download_button(
label="Download Profile Report",
data=file,
file_name="Profile_Report.html",
mime="html"
)