ralate2 commited on
Commit
08c55a5
·
verified ·
1 Parent(s): 3b3f12b

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +7 -8
app.py CHANGED
@@ -6,13 +6,13 @@ import altair as alt
6
  url = 'https://github.com/UIUC-iSchool-DataViz/is445_data/raw/main/licenses_fall2022.csv'
7
  df = pd.read_csv(url)
8
 
9
- # Ensure all object columns are explicitly converted to string for compatibility with Arrow
10
  for col in df.select_dtypes(include=['object']).columns:
11
  df[col] = df[col].astype(str)
12
 
13
- # Convert integer columns to float to handle potential NaN values
14
- for col in df.select_dtypes(include=['int64']).columns:
15
- df[col] = df[col].astype(float)
16
 
17
  # Checking for missing values and handling them
18
  df['Middle'] = df['Middle'].fillna('N/A') # Update Middle column without inplace
@@ -25,19 +25,18 @@ df.dropna(subset=['License Number', 'First Name', 'Last Name', 'Effective Date',
25
  'Expiration Date', 'City', 'Zip', 'County', 'Specialty/Qualifier',
26
  'Controlled Substance Schedule', 'Action'], inplace=True)
27
 
28
- # Ensure datetime columns are correctly formatted
29
  date_columns = ['Original Issue Date', 'Effective Date', 'Expiration Date', 'LastModifiedDate']
30
  for col in date_columns:
31
  df[col] = pd.to_datetime(df[col], errors='coerce', format='%m/%d/%Y')
32
 
33
- # Adding year columns for analysis
34
  df['Original Issue Year'] = df['Original Issue Date'].dt.year
35
  df['Effective Date Year'] = df['Effective Date'].dt.year
36
  df['Expiration Date Year'] = df['Expiration Date'].dt.year
37
  df['Last Modified Date Year'] = df['LastModifiedDate'].dt.year
38
 
39
- # Display dataset preview and column data types
40
- st.write("Dataset Preview", df.head())
41
  st.write("Column Data Types:", df.dtypes)
42
 
43
  # # Converting object columns to category for better memory management
 
6
  url = 'https://github.com/UIUC-iSchool-DataViz/is445_data/raw/main/licenses_fall2022.csv'
7
  df = pd.read_csv(url)
8
 
9
+ # Convert object columns to string for compatibility
10
  for col in df.select_dtypes(include=['object']).columns:
11
  df[col] = df[col].astype(str)
12
 
13
+ # Convert integer columns to float
14
+ for col in df.select_dtypes(include=['int64', 'float64']).columns:
15
+ df[col] = pd.to_numeric(df[col], errors='coerce')
16
 
17
  # Checking for missing values and handling them
18
  df['Middle'] = df['Middle'].fillna('N/A') # Update Middle column without inplace
 
25
  'Expiration Date', 'City', 'Zip', 'County', 'Specialty/Qualifier',
26
  'Controlled Substance Schedule', 'Action'], inplace=True)
27
 
28
+ # Convert datetime columns
29
  date_columns = ['Original Issue Date', 'Effective Date', 'Expiration Date', 'LastModifiedDate']
30
  for col in date_columns:
31
  df[col] = pd.to_datetime(df[col], errors='coerce', format='%m/%d/%Y')
32
 
33
+ # Add year columns
34
  df['Original Issue Year'] = df['Original Issue Date'].dt.year
35
  df['Effective Date Year'] = df['Effective Date'].dt.year
36
  df['Expiration Date Year'] = df['Expiration Date'].dt.year
37
  df['Last Modified Date Year'] = df['LastModifiedDate'].dt.year
38
 
39
+ # Final check of data types
 
40
  st.write("Column Data Types:", df.dtypes)
41
 
42
  # # Converting object columns to category for better memory management