<jupyter_start><jupyter_text><jupyter_code>from urllib.request import urlopen
import json
import pandas as pd
import numpy as np
from random import random
import plotly.express as px
!pip install geocoder
import geocoder
#g = geocoder.osm('1600 Amphitheatre Pkwy, Mountain View, CA')
def such_lat_lon(adresse):
    g = geocoder.osm(adresse)
    if g.latlng is None:
        aus = [None, None]
    else:
        aus = g.latlng
        
    return(aus)
# csv-Datei einlesen
verkauf = pd.read_csv("./etsy2020.csv")

# adresse zusammensetzen 
verkauf["addr"] = verkauf["Strasse"] + ", " + verkauf["PLZ"].map(str)  + " " + verkauf["Ort"] + ", DE"

# Datum zerlegen
winter = [12, 1, 2]
spring = [ 3, 4, 5]
summer = [ 6, 7, 8]
autumn = [ 9,10,11]
verkauf["Verkaufsdatum"] = pd.to_datetime(verkauf["Verkaufsdatum"])
verkauf["Jahr"] = verkauf["Verkaufsdatum"].dt.year
verkauf["Monat"] = verkauf["Verkaufsdatum"].dt.month
verkauf["Tag"]   = verkauf["Verkaufsdatum"].dt.day
verkauf.loc[verkauf.Monat.isin(winter), "season"] = "Winter"
verkauf.loc[verkauf.Monat.isin(spring), "season"] = "Frühling"
verkauf.loc[verkauf.Monat.isin(summer), "season"] = "Sommer"
verkauf.loc[verkauf.Monat.isin(autumn), "season"] = "Herbst"

# addr = verkauf["Strasse","PLZ","Ort"].copy

k=0
for i in verkauf["addr"]:
   # print(i)
   lat, lon = such_lat_lon(i)
   # print(lat,lon)
   verkauf.at[verkauf.index[k],"lat"] = lat
   verkauf.at[verkauf.index[k],"lon"] = lon
   k=k+1

ft_cities = verkauf[["lat","lon","Ort","Titel","season"]]
ft_cities.head()
ft_cities.dropna(subset=['lat'])

fig = px.scatter_mapbox(ft_cities, lat="lat", lon="lon", color = "season" , hover_name="Ort", hover_data=["Titel"],
                        #color_discrete_sequence=["fuchsia"], 
                        zoom=4, height=600)
fig.update_layout(mapbox_style="open-street-map")
fig.update_layout(margin={"r":0,"t":0,"l":0,"b":0})
fig.show()
tx = verkauf
#tx.dropna(subset=["Versanddatum"])

#print(tx.head)
#tx =tx["Versanddatum"]
#tx.dropna(subset=['Versanddatum'])
t2["Verkaufsdatum"] = pd.to_datetime(t2["Verkaufsdatum"])
t2["Jahr"] = t2["Verkaufsdatum"].dt.year
t2["Monat"] = t2["Verkaufsdatum"].dt.month
t2["Tag"] = t2["Verkaufsdatum"].dt.day

tx["m"] = [s[0:2]  if s[2:3] == '/' else s[0:5] for s in tx["Versanddatum"]]
tx["d"] = [s[3:5]  if s[2:3] == '/' else s[0:5] for s in tx["Versanddatum"]]
tx["y"] = [s[6:8]  if s[2:3] == '/' else s[0:5] for s in tx["Versanddatum"]]
#tx.at["spl"] = tx["Versanddatum"].split("/").get(1)
print(tx)

t2 = verkauf

t2["Verkaufsdatum"] = pd.to_datetime(t2["Verkaufsdatum"])
t2["Jahr"] = t2["Verkaufsdatum"].dt.year
t2["Monat"] = t2["Verkaufsdatum"].dt.month
t2["Tag"] = t2["Verkaufsdatum"].dt.day
#t2["y"] = [to_date(d,"mm/dd/yyyy") for d in t2["x"]]
print(t2)
#t2['monat'] = t2["Verkaufsdatum"].apply()
y = verkauf.groupby(["season"]).agg(['count'])
print(y)

ft_cities = verkauf[["lat","lon","Ort","Titel"]]
ft_cities.tail()

verkauf.head()<jupyter_output><empty_output>
{'fraction_non_alphanumeric': 0.21712744436952125, 'fraction_numerical': 0.024949426837491573, 'mean_word_length': 5.233193277310924, 'pattern_counts': {'":': 4, '<': 5, '<?xml version=': 0, '>': 5, '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': '1', 'dir': 'jupyter-structured-clean-dedup', 'id': '611666', 'license': 'MIT', 'n_tokens_mistral': 1336, 'n_tokens_neox': 1317, 'n_words': 205, 'path': 'Geod1.ipynb', 'repo_name': 'TossHx/HelloWorld', 'size': '2966'}