<jupyter_start><jupyter_text>text cleaning to gain classification (dictionary values)<jupyter_code># the column "lokalizacja" contains the description of the location, but it is different for each record
mazda[['lokalizacja']].head()<jupyter_output><empty_output><jupyter_text>preparing the values (list of regions)<jupyter_code># list
regions = ['Dolnoslaskie', 'Kujawsko-pomorskie', 'Lubelskie', 'Lubuskie', 'Lodzkie',
'Malopolskie', 'Mazowieckie', 'Opolskie', 'Podkarpackie', 'Podlaskie', 'Pomorskie',
'Slaskie', 'Swietokrzyskie', 'Warminsko-mazurskie', 'Wielkopolskie', 'Zachodniopomorskie']
# extra column
mazda = mazda.assign(lokalizacja_wojewodztwo = mazda['lokalizacja']) #.str.lower())

# text unification
mazda['lokalizacja_wojewodztwo'].replace({'ś':'s'},regex=True, inplace=True)
mazda['lokalizacja_wojewodztwo'].replace({'Ś':'S'},regex=True, inplace=True)
mazda['lokalizacja_wojewodztwo'].replace({'ą':'a'},regex=True, inplace=True)
mazda['lokalizacja_wojewodztwo'].replace({'ł':'l'},regex=True, inplace=True)
mazda['lokalizacja_wojewodztwo'].replace({'Ł':'L'},regex=True, inplace=True)
mazda['lokalizacja_wojewodztwo'].replace({'ó':'o'},regex=True, inplace=True)
mazda['lokalizacja_wojewodztwo'].replace({'ę':'e'},regex=True, inplace=True)
mazda['lokalizacja_wojewodztwo'].replace({'ń':'n'},regex=True, inplace=True)
mazda[['lokalizacja','lokalizacja_wojewodztwo']].head()<jupyter_output><empty_output><jupyter_text>assigning uniform values<jupyter_code># searching for a value from the list in the description
for val in mazda['lokalizacja_wojewodztwo']:
    for reg in regions:
        if reg in val:
            #mazda['lokalizacja_wojewodztwo'].loc[( mazda['lokalizacja_wojewodztwo'] == val)] = reg # also work
            mazda['lokalizacja_wojewodztwo'].replace(val,reg, inplace=True)
 mazda[['lokalizacja','lokalizacja_wojewodztwo']].head()
# marking values from outside the list as "inne"
mazda['lokalizacja_wojewodztwo'] = mazda['lokalizacja_wojewodztwo'].apply(lambda x: 'inne' if x not in regions else x)
 mazda[['lokalizacja','lokalizacja_wojewodztwo']].head()
 mazda['lokalizacja_wojewodztwo'].unique()
# how many "inne" items do we have?
# over 1000 records has not name of region in description of location
mazda.groupby(by=['lokalizacja_wojewodztwo']).size().sort_values()
mazda['lokalizacja'][( mazda['lokalizacja_wojewodztwo'] == 'inne')]<jupyter_output><empty_output><jupyter_text>preparing the values (list of cities)<jupyter_code># list
city = ['Warszawa', 'Wrocław', 'Poznań', 'Częstochowa', 'Gdynia',
'Białystok', 'Kraków', 'Szczecin', 'Katowice', 'Gdańsk', 'Łódź']
# reset index because I get some error on index nr 222
mazda = mazda.reset_index(drop=True)
# change "inne" for description of loaction
mazda['lokalizacja_wojewodztwo'][( mazda['lokalizacja_wojewodztwo'] == 'inne')] = mazda['lokalizacja'].apply(lambda x: x)
mazda[['lokalizacja','lokalizacja_wojewodztwo']].head()<jupyter_output><empty_output><jupyter_text>assigning uniform values second time<jupyter_code># searching for a value from the list in the description
for val in mazda['lokalizacja_wojewodztwo']:
    for ci in city:
        if ci in val:
            mazda['lokalizacja_wojewodztwo'].replace(val,ci, inplace=True)    
mazda[['lokalizacja','lokalizacja_wojewodztwo']].head()
# change city for region
mazda['lokalizacja_wojewodztwo'].replace({'Warszawa':'Mazowieckie'},regex=True, inplace=True)
mazda['lokalizacja_wojewodztwo'].replace({'Wrocław':'Dolnoslaskie'},regex=True, inplace=True)
mazda['lokalizacja_wojewodztwo'].replace({'Poznań':'Wielkopolskie'},regex=True, inplace=True)
mazda['lokalizacja_wojewodztwo'].replace({'Częstochowa':'Slaskie'},regex=True, inplace=True)
mazda['lokalizacja_wojewodztwo'].replace({'Gdynia':'Pomorskie'},regex=True, inplace=True)
mazda['lokalizacja_wojewodztwo'].replace({'Białystok':'Podlaskie'},regex=True, inplace=True)
mazda['lokalizacja_wojewodztwo'].replace({'Kraków':'Malopolskie'},regex=True, inplace=True)
mazda['lokalizacja_wojewodztwo'].replace({'Szczecin':'Zachodniopomorskie'},regex=True, inplace=True)
mazda['lokalizacja_wojewodztwo'].replace({'Katowice':'Slaskie'},regex=True, inplace=True)
mazda['lokalizacja_wojewodztwo'].replace({'Gdańsk':'Pomorskie'},regex=True, inplace=True)
mazda['lokalizacja_wojewodztwo'].replace({'Łódź':'Lodzkie'},regex=True, inplace=True)
# marking values from outside the list as "inne"
mazda['lokalizacja_wojewodztwo'] = mazda['lokalizacja_wojewodztwo'].apply(lambda x: 'inne' if x not in regions else x)
# only 62 records assigned as "inne"
mazda.groupby(by=['lokalizacja_wojewodztwo']).size().sort_values()
mazda['lokalizacja'][( mazda['lokalizacja_wojewodztwo'] == 'inne')]
mazda.to_json(r'C:\...\dataset_mazda_v3.json')<jupyter_output><empty_output>
{'fraction_non_alphanumeric': 0.16452496313461135, 'fraction_numerical': 0.0021065936380872128, 'mean_word_length': 10.277909738717339, 'pattern_counts': {'":': 0, '<': 21, '<?xml version=': 0, '>': 21, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '5', 'dir': 'jupyter-structured-clean-dedup', 'id': '357562', 'license': 'MIT', 'n_tokens_mistral': 1925, 'n_tokens_neox': 2038, 'n_words': 278, 'path': 'cars - preparing the dataset, part 3.ipynb', 'repo_name': 'RafalKazubowski/data_analysis', 'size': '4747'}