[dictionaries] Updates to German dictionaries
This commit is contained in:
@@ -5,8 +5,10 @@ g
|
|||||||
h
|
h
|
||||||
i
|
i
|
||||||
k
|
k
|
||||||
|
l
|
||||||
n
|
n
|
||||||
o
|
o
|
||||||
|
r
|
||||||
s
|
s
|
||||||
u
|
u
|
||||||
v
|
v
|
||||||
|
|||||||
1
resources/dictionaries/de/entrances.txt
Normal file
1
resources/dictionaries/de/entrances.txt
Normal file
@@ -0,0 +1 @@
|
|||||||
|
eingang
|
||||||
@@ -1 +1,3 @@
|
|||||||
obergeschoss|og|o g
|
etage
|
||||||
|
obergeschoss|og|o g
|
||||||
|
stock
|
||||||
@@ -1 +1,2 @@
|
|||||||
stiege|stg
|
stiege|stg
|
||||||
|
treppe
|
||||||
2
resources/dictionaries/de/unit_directions.txt
Normal file
2
resources/dictionaries/de/unit_directions.txt
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
links|l
|
||||||
|
rechts|r
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
abteilung|abt
|
appartement|apt|app
|
||||||
büro|buro|buero
|
büro|buro|buero
|
||||||
top
|
top
|
||||||
wohnung|whg|w
|
wohnung|whg|w|/ w|/ / w
|
||||||
zimmer|zi
|
zimmer|zi
|
||||||
@@ -399,40 +399,44 @@ class AddressComponents(object):
|
|||||||
|
|
||||||
def combine_fields(self, address_components, language, country=None, generated_components=None):
|
def combine_fields(self, address_components, language, country=None, generated_components=None):
|
||||||
combo_config = address_config.get_property('components.combinations', language, country=country, default={})
|
combo_config = address_config.get_property('components.combinations', language, country=country, default={})
|
||||||
values = []
|
combos = []
|
||||||
probs = []
|
probs = {}
|
||||||
generated_components = generated_components or set()
|
generated_components = generated_components or set()
|
||||||
|
|
||||||
for k, v in six.iteritems(combo_config):
|
for k, combo in six.iteritems(combo_config):
|
||||||
values.append(v)
|
|
||||||
probs.append(v['probability'])
|
|
||||||
|
|
||||||
if not isclose(sum(probs), 1.0):
|
|
||||||
values.append(None)
|
|
||||||
probs.append(1.0 - sum(probs))
|
|
||||||
|
|
||||||
probs = cdf(probs)
|
|
||||||
|
|
||||||
combo = weighted_choice(values, probs)
|
|
||||||
if combo is not None:
|
|
||||||
components = OrderedDict.fromkeys(combo['components']).keys()
|
components = OrderedDict.fromkeys(combo['components']).keys()
|
||||||
if not all((c in address_components and (c in generated_components or self.is_numeric(address_components[c])) for c in components)):
|
if not all((c in address_components and (c in generated_components or self.is_numeric(address_components[c])) for c in components)):
|
||||||
return None
|
continue
|
||||||
|
|
||||||
values = []
|
combos.append((len(components), combo))
|
||||||
probs = []
|
|
||||||
for s in combo['separators']:
|
|
||||||
values.append(s['separator'])
|
|
||||||
probs.append(s['probability'])
|
|
||||||
|
|
||||||
probs = cdf(probs)
|
if not combos:
|
||||||
separator = weighted_choice(values, probs)
|
return None
|
||||||
|
|
||||||
new_label = combo['label']
|
combos.sort(key=operator.itemgetter(0), reverse=True)
|
||||||
new_value = separator.join([address_components.pop(c) for c in components])
|
|
||||||
address_components[new_label] = new_value
|
for num_components, combo in combos:
|
||||||
return new_label
|
prob = combo['probability']
|
||||||
return None
|
if random.random() < prob:
|
||||||
|
break
|
||||||
|
else:
|
||||||
|
return None
|
||||||
|
|
||||||
|
components = OrderedDict.fromkeys(combo['components']).keys()
|
||||||
|
|
||||||
|
values = []
|
||||||
|
probs = []
|
||||||
|
for s in combo['separators']:
|
||||||
|
values.append(s['separator'])
|
||||||
|
probs.append(s['probability'])
|
||||||
|
|
||||||
|
probs = cdf(probs)
|
||||||
|
separator = weighted_choice(values, probs)
|
||||||
|
|
||||||
|
new_label = combo['label']
|
||||||
|
new_value = separator.join([address_components.pop(c) for c in components])
|
||||||
|
address_components[new_label] = new_value
|
||||||
|
return new_label
|
||||||
|
|
||||||
def generated_type(self, component, existing_components, language, country=None):
|
def generated_type(self, component, existing_components, language, country=None):
|
||||||
component_config = address_config.get_property('components.{}'.format(component), language, country=country)
|
component_config = address_config.get_property('components.{}'.format(component), language, country=country)
|
||||||
|
|||||||
Reference in New Issue
Block a user