Avviso importante prima di immergerci nel codice; assumiamo che lo sviluppo di quei distretti possa essere identificato dalla dimensione della famiglia. Certo, questo non è vero al cento per cento, tuttavia, per questo caso facciamo questa ipotesi.
Per favore, non rimanere bloccato in significati teorici, lo scopo di questo post sul blog è estrarre con successo i dati ed eseguire l'analisi dei dati su di essi. Non si tratta di provare qualcosa per davvero.
2. Estrai dati
Estraiamo i dati dalla piattaforma open data della municipalità di Istanbul (ibb) con su API. Puoi trovare diversi set di dati aperti della municipalità di Istanbul.
Vai al collegamento dati di seguito e fai clic sul pulsante "API dati".
Quando facciamo clic sul pulsante Data API, si apre questa finestra, copieremo il collegamento nel rettangolo rosso sottostante e lo incolleremo nel nostro codice.
Successivamente, elimineremo '$ top = 5 &’ per estrarre tutti i dati, non solo il primo 5. Puoi vedere il codice sotto per estrarre i dati dal sito Web e cambiarlo nel formato del frame di dati usando i panda.
URL = 'https://data.ibb.gov.tr/datastore/odata3.0/25077460-ddfb-45b6-b32c-4615f0ad2d57?$formato=json' #URL della dimensione della famiglia in base ai distretti
def pulldataToDataframe(URL):
query = urllib.request.urlopen(URL) # Connessione API data = json.loads(query.leggi().decodificare()) # Passa al tipo json data = data.get("valore") # Ottenere solo il valore dei dati return pd.DataFrame(dati) # Passa al dataframe df = df.drop(colonne=”_id”) # Rimozione della colonna ID
df = pulldataToDataframe(URL)
Stampa(df.colonne)
Abbiamo estratto i dati e li abbiamo spostati nel data frame. Vediamo il 5 Dati principali.
df.head() #Dataframe prima colonna: Quartieri, 2nd colonna: dimensione della famiglia secondo i distretti
Istanbul ha 2 parti; Europea e Asiatica. Useremo Kadikoy per il centro della parte asiatica e Besiktas per la parte europea. Separiamo i distretti per la parte asiatica (kadikoy_list) e la parte europea (besiktas_list)
kadikoy_list = ['Kadikoy', 'Aquila', 'Sile', 'Uskudar', 'Pendik', 'Umraniye', 'Maltepe', 'Sultanbeyli', 'Tuzla', 'Ataşehir', 'Cekmekoy', 'Santaktepe', 'Beykoz']
besiktas_list = ['Besiktas', 'Bakirkoy', 'Beyoglu', 'Catalca', 'Lavoro', 'Conquistatore', 'Gaziosmanpasa', 'Sarıyer', 'Silivrì', 'Nebbioso', 'Zeytinburnu', 'Buyukcekmece', 'Kagithane', 'Küçükçekmece', 'Bayrampasa', "Cacciatori", 'Bagcillare', 'Arnuvutköy', 'Basaksehir', 'Beylikduzu', 'Esenyurt', "Sultangazi", 'Esenler', 'Gungoren', 'Bahcelievler']
kadikoy_dist = [] besiktas_dist = []
3. API di GOOGLE
Bene, ora vediamo la parte dell'API di Google. Ci sono molte API disponibili per l'uso su Google Cloud Platform. Puoi controllarli qui: https://cloud.google.com/
Devi creare il tuo account e richiedere una chiave API. È spiegato bene qui; https://developers.google.com/maps/documentation/javascript/get-api-key
Ho scaricato le API di seguito. tuttavia, come potete vedere, Uso solo l'API di array di distanza e l'API di utilizzo del servizio. Ti consiglio di scaricare anche le API JavaScript di Geocoding, geolocalizzazione, posti, indicazioni stradali e mappe. Se vuoi lavorare con i dati di GoogleMaps.
Ora vediamo il codice di come utilizziamo l'API. Nel codice commenti qui sotto, Penso sia spiegato bene.
richieste di importazione, json
api_key ='QsatasdjıgwedSDFJW-A1lkjasdbUQ' #Devi inserire qui la tua chiave API # URL variabileIn statistica e matematica, un "variabile" è un simbolo che rappresenta un valore che può cambiare o variare. Esistono diversi tipi di variabili, e qualitativo, che descrivono caratteristiche non numeriche, e quantitativo, che rappresentano quantità numeriche. Le variabili sono fondamentali negli esperimenti e negli studi, poiché consentono l'analisi delle relazioni e dei modelli tra elementi diversi, facilitare la comprensione di fenomeni complessi.... store url url = ‘https://maps.googleapis.com/maps/api/distancematrix/json?'
#Per ogni distretto nella parte asiatica, troviamo la sua distanza tra #(kadikoy) e aggiungi la nostra lista 'kadikoy_dist'. per dest in kadikoy_list: fonte = 'kadiköy' r = richieste.get(URL + 'origini=' + fonte + '&destinazioni=' + destinazione + '&chiave=' + api_key) kadikoy_dist.append(r.json()["righe"][0]['elementi'][0]['distanza']['valore'])
#Per ogni distretto in parte europea, troviamo la sua distanza tra #(besiktas) e aggiungi la nostra lista 'besiktas_dist'. per dest in besiktas_list: source = 'besiktas' r = richieste.get(URL + 'origini=' + fonte + '&destinazioni=' + destinazione + '&chiave=' + api_key) besiktas_dist.append(r.json()["righe"][0]['elementi'][0]['distanza']['valore'])
Come potete vedere, abbiamo estratto i dati dai distretti, dimensione media della famiglia con ibb data API, e abbiamo generato una nuova funzione con l'API della matrice di distanza dall'API di Google e l'abbiamo chiamata come colonna Distanze.
Articoli correlati:
- Metriche di distanza | Diverse metriche di distanza nell'apprendimento automatico
- API PNL | L'API NLP di Google per analizzare e produrre contenuti migliori
- Usa Google Colab per i modelli di deep learning e machine learning
- 5 fantastici strumenti di web scraping per raccogliere dati per il tuo prossimo progetto!!