import json
import os
import pandas as pd
from features.textual_features.keyword_search.contextual_fuzzy_search import search_best_matches_dict
pd.set_option('display.max_colwidth', 1000)
pd.set_option('display.max_rows', None)
Contextual fuzzy keyword search for flooding-related keywords
Prepare data
Change the folder path in the code block below to read in the data.
Specify the relevant column names. The function that is used in the following expects the input data frame to have (at least) two columns, i.e., one id and one content column. Here, the columns are called
filenameandcontent. If named differently, change the column names in the code below.
# specify file path
INPUT_FOLDER_PATH = os.path.join("..", "data", "nrw", "bplan", "raw", "text", "bp_text.csv")
OUTPUT_FILE_PATH = os.path.join("..", "data", "nrw", "bplan", "features", "keywords", "fuzzy_search", "fuzzy_search_hochwasser_")
# specify relevant column names
ID_COLUMN='filename'
TEXT_COLUMN='content'
# read in data
input_df = pd.read_csv(INPUT_FOLDER_PATH,
names=[ID_COLUMN, TEXT_COLUMN])
Apply fuzzy keyword search to keyword of choice and extract the best matches
Adjust
keyword_dictAdjust
threshold: minimum similarity scoreAdjust
context_words: number of words extracted to contextualise keyword
Note: To apply the fuzzy search to multiple keywords at once,
contextual_fuzzy_search_parallelised.py can be run. Only adjust the
file paths and variables in lines 13 to 22. The corresponding dictionary
is keyword_dict_fuzzy and can easily be adapted if necessary.
with open('keyword_dict_hochwasser.json') as f:
HOCHWASSER_KEYWORDS = json.load(f)
THRESHOLD=85
CONTEXT_WORDS=15
all_matches = search_best_matches_dict(input_df=input_df,
id_column_name=ID_COLUMN,
text_column_name=TEXT_COLUMN,
keyword_dict=HOCHWASSER_KEYWORDS,
threshold=THRESHOLD,
context_words=CONTEXT_WORDS)
all_matches.head(15)
| keyword | contextualised_keyword | actual_keyword | category | filename |
|---|---|---|---|---|
| 0 | wasserhaushalt gebotene sparsame verwendung des wassers zu erreichen. § 51 a lwg legt fest, dass niederschlagswasser von grundstücken, die nach dem 01.01.1996 erstmals bebaut, befestigt oder an die öffentliche kanalisation angeschlossen ;;; der flächenversiegelung in größerem umfang. da bodenversiegelung und die befestigung von boden die infiltration von niederschlagswasser in den boden und somit eine anreicherung des grundwassers verhindert, wird die grund wasserdargebots und | niederschlagswasser | betroffen_von_überschwemmung | 116995_8.pdf |
| 1 | sie auch als besonders schutzwürdigen böden in der bodenkarte nrw ausgewiesen. für eine versickerung von niederschlagswasser sind die anstehenden böden nur bedingt geeignet. die böden der bördelandschaft sind relativ anfällig für ;;; dass die anstehenden böden nur eine bedingte eignung dafür haben. im plangebiet werden voraussichtlich die niederschlagswässer der verkehrsflächen an die öffentliche kanalisation angeschlossen. es ist zu prüfen, ob unbelastetes oberflächen wasser ;;; emissionen sowie der sachgerechte umgang mit abfällen und abwässern" ➡ die handhabung mit den anfallenden niederschlagswässern wird im weiteren verfahren geklärt. ➡ entsorgung der schmutzwässer über kanalnetz. ➡ nutzung von signalhorn | niederschlagswasser | betroffen_von_überschwemmung | 1691739_2.pdf |
| 2 | den grundwas serschutz ist eine gewisse beeinträchtigung gegeben, da durch die versiegelung im plange biet niederschlagswasser nicht mehr ungehindert versickern und zur grundwasseranreiche rung beitragen kann. allerdings wäscht der niederschlag die ;;; hinblick auf den grundwasserschutz eine gewisse schutzwirkung gegeben, da durch die ausbleibende versiegelung im plangebiet niederschlagswasser versickern und zur grundwasseranreicherung beitragen kann. planung: durch die umsetzung der planung wird zusätzlicher boden ;;; umsetzung der planung wird zusätzlicher boden versiegelt, was auswirkungen auf die grundwasserneubildung hat, da das niederschlagswasser im plangebiet nicht mehr umweltbericht flächennutzungsplanänderung nr. 5 feuerwehrgerätehaus giesendorf 17 ungehindert versickern kann. allerdings ;;; 5 feuerwehrgerätehaus giesendorf 17 ungehindert versickern kann. allerdings ist gemäß § 51a lwg nw das niederschlagswasser von grundstücken, die nach dem 1. januar 1996 erstmals bebau... | niederschlagswasser | betroffen_von_überschwemmung | 1691740_2.pdf |
| 3 | hinblick auf den grundwasserschutz eine gewisse schutzwirkung gegeben, da durch die ausbleibende versiegelung im plangebiet niederschlagswasser versickern und zur grundwasseranreicherung beitragen kann. aller dings wäscht der niederschlag die durch düngung bedingten ;;; umsetzung der planung wird zusätzlicher boden versiegelt, was auswirkungen auf die grundwasserneubildung hat, da das niederschlagswasser im plangebiet nicht mehr ungehindert versickern kann. allerdings ist gemäß § 51a lwg nw das ;;; im plangebiet nicht mehr ungehindert versickern kann. allerdings ist gemäß § 51a lwg nw das niederschlagswasser von grundstücken, die nach dem 1. januar 1996 erstmals bebaut, befestigt oder an die öffentliche ;;; der allgemeinheit möglich ist. aufgrund der gesetzgebung ist sichergestellt, dass zumindest ein beachtlicher anteil des niederschlagswassers dem natürlichen wasserhaushalt wieder zugeführt wird und so der grundwasserneubildung dient. infolgedessen ergeben sich in | niederschlagswasser | betroffen_von_überschwemmung | 1691744_1.pdf |
| 4 | bestehende mischwasserkanalisation. aufgrund der nur geringfügig erhöhten abwassermenge ist die vorhandene entwässerungsinfrastruktur ausreichend. das unverschmutzte niederschlagswasser kann grundsätzlich in zisternen aufgefan gen werden und als brauchwasser zur toilettenspülung, gartenbewässerung o.ä. verwendung | niederschlagswasser | betroffen_von_überschwemmung | 1691766_1.pdf |
| 5 | bestehende mischwasserkanalisation. aufgrund der nur geringfügig erhöhten abwassermenge ist die vorhandene entwässerungsinfrastruktur ausreichend. das unverschmutzte niederschlagswasser kann grundsätzlich in zisternen aufgefan gen werden und als brauchwasser zur toilettenspülung, gartenbewässerung o.ä. verwendung | niederschlagswasser | betroffen_von_überschwemmung | 1691842_1.pdf |
| 6 | möglichkeiten der entwicklung der gemeinde insbesondere durch wiedernutzbarmachung von flächen, nachverdichtung und andere maßnahmen zur innenentwicklung zu nutzen (§1a abs.2). bundesnaturschutzgesetz (bnatschg) / landschaftsgesetz nw (lg nw) das bundesnaturschutzgesetz (bnatschg) schreibt | innenentwicklung | innenentwicklung | 116995_8.pdf |
| 7 | möglichkeiten der entwicklung der gemeinde insbesondere durch wiedernutzbarmachung von flächen, nachverdichtung und andere maßnahmen zur innenentwicklung zu nutzen sowie bodenversiegelungen auf das notwendige maß zu begrenzen. die notwendigkeit der umwandlung landwirtschaftlich ;;; oder als wald genutzter flächen soll begründet werden; dabei sollen ermittlungen zu den möglichkeiten der innenentwicklung zugrunde gelegt werden, zu denen insbesondere brachflächen, gebäudeleerstand, baulücken und andere nachverdichtungsmöglichkeiten zählen können. begründung | innenentwicklung | innenentwicklung | 1691739_1.pdf |
| 8 | sparsamer und schonender umgang mit grund und boden durch wiedernutz barmachung von flächen, nachverdichtung und innenentwick lung zur verringerung zusätzlicher inanspruchnahme von bö den landwirtschaftlich, als wald oder für wohnungszwecke | innenentwicklung | innenentwicklung | 1691740_2.pdf |
| 9 | sparsamer und schonender umgang mit grund und boden durch wiedernutz barmachung von flächen, nachverdichtung und innenentwick lung zur verringerung zusätzlicher inanspruchnahme von bö den landwirtschaftlich, als wald oder für wohnungszwecke | innenentwicklung | innenentwicklung | 1691744_1.pdf |
| 10 | möglichkeiten der entwicklung der gemeinde insbesondere durch wiedernutzbarmachung von flächen, nachverdichtung und andere maßnahmen zur innenentwicklung zu nutzen sowie bodenversiegelungen auf das notwendige maß zu begrenzen. die notwendigkeit der umwandlung landwirtschaftlich ;;; oder als wald genutzter flächen soll begründet werden; dabei sollen ermittlungen zu den möglichkeiten der innenentwicklung zugrunde gelegt werden, zu denen insbesondere brachflächen, gebäudeleerstand, baulücken und andere nachverdichtungsmöglichkeiten zählen können. diesbezüglich ;;; die sonderregeln des § 246 abs. 10 baugb ( sonderreglung für flüchtlingsunterkünfte) nicht geeignet eine innenentwicklung umzusetzen, da die sonderregelung lediglich befristet bis zum 31.12.2019 in kraft ist, die stadt elsdorf ;;; im hinblick auf eine mögliche errichtung von flüchtlingsunterkünften untersucht worden. standorte im innenbereich, die einer innenentwicklung.im sinne des o.g. gesetzes darstellen, stehen aufgrund ... | innenentwicklung | innenentwicklung | 1691744_2.pdf |
| 11 | voll umfänglich im beplanten innenbereich gem. § 34 baugb. die beabsichtigte städtebauliche zielsetzung dient der innenentwicklung i.s.d. § 1a abs. 2 baugb. stadt elsdorf, bebauungsplan nr. 75 „niederembt, embestraße“, 1. änderung | innenentwicklung | innenentwicklung | 1691766_1.pdf |
| 12 | aus der deutschen grundkarte mit geltungsbereich unter abschnitt 2). die beabsichtigte städtebauliche zielsetzung dient der innenentwicklung i.s.d. § 1a abs. 2 baugb. die beabsichtigte bebauungsplanung entspricht der geordneten städtebauli chen entwicklung | innenentwicklung | innenentwicklung | 1691842_1.pdf |
Write results to csv and json
# write to csv
all_matches.to_csv(os.path.join(OUTPUT_FILE_PATH + ".csv"), header=True, index=False)
# write to json
all_matches_json = all_matches.to_json(orient='records')
with open(OUTPUT_FILE_PATH + ".json", 'w') as outputfile:
outputfile.write(all_matches_json)