Y a-t-il quelque chose comme ça? J'ai obtenu des informations sur l'entreprise toB, mais il n'y a pas de numéro d'entreprise dans le CRM. Il y a des informations de base telles que le nom de l'entreprise et l'année de création. Que faut-il utiliser comme clé de jointure lors de la jonction avec un ensemble de données d'une autre liste dans un tel cas? Je pense que je suis inquiet.
Toutes les informations de l'entreprise peuvent être combinées en une seule information à condition qu'un numéro d'entreprise soit défini par le gouvernement. Par exemple, supposons que vous souhaitiez joindre la table A et la table B comme suit:
Tableau A (informations sur l'entreprise)
Nom de la compagnie | Année d'établissement | Préfectures |
---|---|---|
hoge | fuga | 3 |
Tableau B (coordonnées)
Nom de la compagnie | Montant estimé | Statut de la commande |
---|---|---|
hoge | 3000 | Première connexion |
Quiconque est entré en contact avec des langues de base de données telles que SQL le saura. La charge DB est appliquée à la combinaison de chaînes de caractères. Tant que vous disposez d'un numéro d'entreprise, vous pouvez l'utiliser comme clé de combinaison commune. Si vous souhaitez obtenir un numéro d'entreprise, gbizinfo du ministère de l'Économie, du Commerce et de l'Industrie est pratique. Il a ce service REST API! Il est donc très facile d'obtenir un numéro d'entreprise. https://info.gbiz.go.jp/api/index.html
Plus tard, X-hojin Info-api-token sera requis pour les informations sur les en-têtes. Vous devez demander à l'avance l'utilisation de l'API.
Supposons que vous disposiez de données contenant uniquement le nom de l'entreprise et l'année de création, comme indiqué ci-dessous. Je voudrais inclure le numéro d'entreprise dans ces données. La méthode au moment de la demande est GET
Nom de la compagnie | Année d'établissement |
---|---|
Rakuten Mobile Co., Ltd. | 2018 |
Matsuya Foods Co., Ltd. | 2018 |
request.py
import json
import pandas as pd
import requests
class CorporateNumbers:
def __init__(self):
self.headers = {
"Accept": "application/json",
"X-hojinInfo-api-token": "###token###"
}
self.endpoint_url = 'https://info.gbiz.go.jp/hojin/v1/hojin'
def _create_taeger_company_dataframe(self):
df = pd.read_clipboard()
return df
def _get_corporate_number(self,df):
#df = self._create_taeger_company_dataframe()
name = df.name
founded_year = df.founded
results = []
for name,founded in zip(name,founded_year):
data = {
'name':name,
'founded':founded
}
res = requests.get(
url = self.endpoint_url,
headers = self.headers,
params = data
)
json = res.json()['hojin-infos']
results.extend(json)
df = pd.io.json.json_normalize(results)
return df
def _merge_dataframe(self):
df1 = self._create_taeger_company_dataframe()
df2 = self._get_corporate_number(df = df1)
df3 = pd.merge(df1,df2,on='name',how='left')
return df3
Recommended Posts