Spaces:
Sleeping
Sleeping
Commit
·
50d74bb
1
Parent(s):
4e1a625
Update app.py
Browse files
app.py
CHANGED
|
@@ -20,13 +20,16 @@ def normalize_string(string):
|
|
| 20 |
return normalized_string
|
| 21 |
|
| 22 |
def jaccard_similarity(string1, string2,n = 2, normalize=True):
|
| 23 |
-
|
| 24 |
-
|
| 25 |
-
|
| 26 |
-
|
| 27 |
-
|
| 28 |
-
|
| 29 |
-
|
|
|
|
|
|
|
|
|
|
| 30 |
return similarity
|
| 31 |
|
| 32 |
|
|
@@ -90,14 +93,14 @@ def google_address(address):
|
|
| 90 |
df.insert(0,'Address Input',address)
|
| 91 |
|
| 92 |
return df
|
| 93 |
-
|
| 94 |
def catch_errors(addresses):
|
| 95 |
try:
|
| 96 |
return google_address(addresses)
|
| 97 |
except:
|
| 98 |
return pd.DataFrame({'Address Input':[addresses]})
|
| 99 |
|
| 100 |
-
|
| 101 |
def process_multiple_address(addresses):
|
| 102 |
results=Parallel(n_jobs=32, prefer="threads")(delayed(catch_errors)(i) for i in addresses)
|
| 103 |
return results
|
|
@@ -108,11 +111,11 @@ st.set_page_config(layout="wide")
|
|
| 108 |
|
| 109 |
address = st.sidebar.text_input("Address", "190 Pebble Creek Dr Etna, OH 43062")
|
| 110 |
uploaded_file = st.sidebar.file_uploader("Choose a file")
|
| 111 |
-
address_file = st.sidebar.radio('Choose',('Single Address', 'File'))
|
| 112 |
match_percent = st.sidebar.selectbox('Address Match Percentage At Least:',(70, 80, 90, 100, 0))
|
| 113 |
return_sq = st.sidebar.radio('Return Only Results with Square Footage',('No', 'Yes'))
|
| 114 |
|
| 115 |
-
if
|
| 116 |
try:
|
| 117 |
df = pd.read_csv(uploaded_file)
|
| 118 |
except:
|
|
|
|
| 20 |
return normalized_string
|
| 21 |
|
| 22 |
def jaccard_similarity(string1, string2,n = 2, normalize=True):
|
| 23 |
+
try:
|
| 24 |
+
if normalize:
|
| 25 |
+
string1,string2= normalize_string(string1),normalize_string(string2)
|
| 26 |
+
|
| 27 |
+
grams1 = set(ngrams(string1, n))
|
| 28 |
+
grams2 = set(ngrams(string2, n))
|
| 29 |
+
similarity = len(grams1.intersection(grams2)) / len(grams1.union(grams2))
|
| 30 |
+
except:
|
| 31 |
+
similarity=0
|
| 32 |
+
|
| 33 |
return similarity
|
| 34 |
|
| 35 |
|
|
|
|
| 93 |
df.insert(0,'Address Input',address)
|
| 94 |
|
| 95 |
return df
|
| 96 |
+
|
| 97 |
def catch_errors(addresses):
|
| 98 |
try:
|
| 99 |
return google_address(addresses)
|
| 100 |
except:
|
| 101 |
return pd.DataFrame({'Address Input':[addresses]})
|
| 102 |
|
| 103 |
+
@st.cache_data
|
| 104 |
def process_multiple_address(addresses):
|
| 105 |
results=Parallel(n_jobs=32, prefer="threads")(delayed(catch_errors)(i) for i in addresses)
|
| 106 |
return results
|
|
|
|
| 111 |
|
| 112 |
address = st.sidebar.text_input("Address", "190 Pebble Creek Dr Etna, OH 43062")
|
| 113 |
uploaded_file = st.sidebar.file_uploader("Choose a file")
|
| 114 |
+
# address_file = st.sidebar.radio('Choose',('Single Address', 'File'))
|
| 115 |
match_percent = st.sidebar.selectbox('Address Match Percentage At Least:',(70, 80, 90, 100, 0))
|
| 116 |
return_sq = st.sidebar.radio('Return Only Results with Square Footage',('No', 'Yes'))
|
| 117 |
|
| 118 |
+
if uploaded_file is not None:
|
| 119 |
try:
|
| 120 |
df = pd.read_csv(uploaded_file)
|
| 121 |
except:
|