Erstellen Sie solche Testdaten mit Python (Teil 1)

Mir wurde über die PHP-Version von Faker berichtet, die Dummy-Daten auf Twitter erstellt. Als ich nach der Pyhton-Version suchte, hatte ich einen Plan und installierte ihn. ..

Installation

% pip install faker
% faker --version
faker 4.0.2

Erstellung von Testdaten

make_fake_data.py


from faker.factory import Factory

Faker = Factory.create
fake = Faker()
fake.seed(0)
fake = Faker("ja_JP")

print(
    fake.csv(
        header=None,
        data_columns=("{{name}}", "{{zipcode}}", "{{address}}", "{{phone_number}}"),
        num_rows=10,
        include_row_ids=False,
    )
)

Versuchen Sie es im VS Code Debug-Modus.

 %  env PTVSD_LAUNCHER_PORT=53546 /usr/local/opt/python/bin/python3.7 /Users/nandymak/.vscode/extensions/ms-python.python-2020.2.64397/pythonFiles/lib/python/new_ptvsd/wheels/ptvsd/launcher /Users/nandymak/dev/fake-data/make_fake_data.py 
"Naoko Fujimoto","265-8376","23-19-7 Sansuji, Nishi-ku, Yokohama-shi, Oita Gomigaya Corp. 948","92-4115-7815"
"Ryosuke Nagisa","989-9052","36-1-3-1 Tomihisa-cho, Shirako-cho, Chosei-gun, Saga Shirokane Urban 097","53-5139-3328"
"Sotaro Ito","520-8016","35-7-20, Kudan Minami, Mizuho-cho, Nishitama-gun, Präfektur Kyoto","090-4719-6593"
"Kenichi Kato","627-4260","3-27-3 Raimon, Niijima-mura, Präfektur Akita Senzoku Court 684","090-3396-9477"
"Yoko Watanabe","812-5855","Marunouchi JP Tower 13-8-1, Edogawa-ku, Präfektur Nara","090-1352-5601"
"Kumiko Yamagishi","836-9402","8-21-7 Nagahata, Stadt Kokubunji, Präfektur Miyazaki, Hitotsubashi Park 510","090-3217-3008"
"Shota Inoue","226-1179","3-20-4 Gomigaya, Sakae-cho, Inba-gun, Präfektur Ishikawa Shibaura Urban 792","090-3022-5841"
"Kana Sasada","482-6715","Heights Konan 150, 25-27-9, Rokubancho, Setani-ku, Yokohama-shi, Nagasaki","090-2375-9459"
"Mai Nakatsugawa","732-5083","13-23-11 Tanse, Stadt Higashi-Kurume, Präfektur Nagano Maeyaroku Corp. 960","080-9602-7142"
"Ryosuke Yamada","618-0001","27-7-18 Hirasuka, Chiyoda-ku, Gericht der Präfektur Mie Marunouchi JP Tower 206","65-0300-8913"

Diese Art von Daten wurde erstellt. Es ist so ähnlich, wenn Sie es in einem Unternehmen verwenden und wenn Sie nicht im Voraus sagen, dass es sich um von Faker generierte Dummy-Daten handelt, können persönliche Informationen verloren gehen und Aufhebens machen.

Neben CSV

TSV oder DSV? Und so weiter. Ich muss die Funktionen aussortieren, die verwendet werden können (TODO).

faker.py


fake.tsv(header=None, data_columns=('{{name}}', '{{address}}'), num_rows=10, include_row_ids=False)

Was mir aufgefallen ist

Elemente, die angegeben werden können

Ich habe versucht, es in einer Tabelle zusammenzufassen, aber ich habe aufgegeben, weil es anscheinend mehr als 200 gibt. So generieren Sie Testdaten mit Faker in Python

Im Moment sind hier einige Dinge, die Sie häufig verwenden könnten. Die vollständige Liste finden Sie wahrscheinlich auf der offiziellen Website Docs »Locales» Language ja_JP.

Adressensystem (faker.providers.address)

Methodenname Bedeutung Stichprobe
address Adresse 38-9-5 Hirasuka, Hachijo-cho, Hachijojima, Präfektur Kumamoto Chizuka Palace 161
ban Adresse Nr. 6
building_name Gebäudename Park
building_number Hausnummer? 263
chome Chome 1-chome
city Kommunal Komae Stadt
city_suffix Kommunal(Fester Wert?) Ville
country Land Neu-Kaledonien
gou Nein. Nr. 15
postcode Postleitzahl 288-2290
prefecture Name der Präfekturen Präfektur Tochigi
street_address Adresse 215 Kimura Street
street_name Straßenname Sasaki Street
street_suffix Straßensuffix(※1) Street
town Name der Stadt Daiba
zipcode Postleitzahl 149-3866

Persönliches Namenssystem (faker.providers.person)

Methodenname Bedeutung Stichprobe
name Vollständiger Name(chinesische Charaktere) Yui Aoyama
last_name Familienname, Nachname(chinesische Charaktere) Takahashi
first_name Name(chinesische Charaktere) Yumiko
name_female Weiblicher Name(chinesische Charaktere) Tomomi Tanabe
name_male Männlicher Name(chinesische Charaktere) Yoichi Fujimoto
last_name_male Männlicher Nachname(chinesische Charaktere)? Nishinoen
first_name_male Männlicher Name(chinesische Charaktere) Atsushi
last_name_female Weiblicher Nachname(chinesische Charaktere)? Yoshida
first_name_female Frauenname(chinesische Charaktere) Tomomi
romanized_name Vollständiger Name(Romaji) Akira Sasada
last_romanized_name Familienname, Nachname(Romaji) Ogaki
first_romanized_name Name(Romaji) Naoki
first_romanized_name_male Männlicher Name(Romaji) Manabu
first_romanized_name_female Frauenname(Romaji) Rei
kana_name Vollständiger Name(Kana) Takahashi Miki
last_kana_name Familienname, Nachname(Kana) Saito
first_kana_name Name(Kana) Yoichi
first_kana_name_male Männlicher Name(Kana) Naoto
first_kana_name_female Frauenname(Kana) Meine

Prüfen Sie die Artikellänge

Ich habe die Artikellänge der generierten Daten überprüft, um in die RDB einzutauchen. Ich habe es bei Colaboratory bestätigt.

# !pip install faker                         #Nur zum ersten Mal ausführen
import numpy as np
import pandas as pd
from faker.factory import Factory
Faker = Factory.create
fake = Faker()
fake = Faker("ja_JP")
test_data = []
x = 1000000                              #Anzahl der Messungen

%timeit 
for i in range(0, x):
    test_data.append(len(fake.address()))  #Geben Sie das Element an, das Sie messen möchten(fake.xxxxx())

a=np.mean(test_data)
b=np.max(test_data)
print('mean={}、max={}'.format(a,b))

In 1 Million Fällen sind es maximal 50 Zeichen.

mean=26.205511、max=53

Ich habe es mehrmals versucht, aber 55 war das Maximum, also scheint es gut, über 64 Zeichen nachzudenken. ** Bitte beachten Sie, dass dies nicht die Anzahl der Bytes ist. ** **.

Generieren Sie SQL zum Einfügen (TODO)

Für meine Hausaufgaben möchte ich eine "CREATE TABLE" -Anweisung und einen WRAPPER erstellen, der eine "INSERT" -Anweisung generiert, damit ich nach Angabe der erforderlichen Elemente eine Tabelle in RDB erstellen kann. ~~ * Sie müssen die Anzahl der Ziffern und Attribute des Elementnamens ermitteln, die Faker für jede Methode ausspuckt. ~~


Vorerst hätte ich hier für heute vergeben sollen.

Recommended Posts

Erstellen Sie solche Testdaten mit Python (Teil 1)
Verarbeiten Sie Pubmed .xml-Daten mit Python [Teil 2]
Generieren Sie japanische Testdaten mit Python faker
Primzahlbeurteilung mit Python
Datenanalyse mit Python 2
Erstellen Sie eine App, die Schüler mit Python errät
Erstellen Sie eine Seite, die unbegrenzt mit Python geladen wird
Primzahlbeurteilung mit Python
Datenanalyse mit Python
Erstellen Sie eine fraktale Figur mit Python Teil1 (Shelpinsky's Gasket)
[Python] Strukturiertes Array erstellen (heterogene Daten mit NumPy speichern)
Beachten Sie, dass das Schreiben mit Ruby so ist wie das Schreiben mit Python
Ein Server, der POST-Daten mit flask / python wiedergibt
Bildverarbeitung mit Python (Teil 2)
Mit Python erstellte Beispieldaten
Python mit freeCodeCamp Teil1 studieren
Angrenzende Bilder mit Python Teil 1
Schaben mit Selen + Python Teil 1
Erstellen Sie ein 3D-GIF mit Python3
Holen Sie sich Youtube-Daten mit Python
Python studieren mit freeCodeCamp part2
Bildverarbeitung mit Python (Teil 1)
Nampre mit Python lösen (Teil 2)
Bildverarbeitung mit Python (3)
Schaben mit Selen + Python Teil 2
Erstellen Sie ein Verzeichnis mit Python
Lesen von JSON-Daten mit Python
Ein Memo, das mit Python & Spark Daten aus dashDB liest
Ich möchte Daten mit Python analysieren können (Teil 3)
Ich möchte Daten mit Python analysieren können (Teil 1)
Erstellen wir ein Skript, das sich bei Ideone.com in Python registriert.
Ich möchte Daten mit Python analysieren können (Teil 4)
Ich möchte Daten mit Python analysieren können (Teil 2)
Testgetriebene Entwicklung mit Django Teil 3
Spielen Sie handschriftliche Zahlen mit Python Part 1
Erstellen Sie eine Plotanimation mit Python + Matplotlib
Testgetriebene Entwicklung mit Django Teil 4
Erstellen Sie Awaitable mit der Python / C-API
Anwendung von Python: Datenbereinigung Teil 1: Python-Notation
Testgetriebene Entwicklung mit Django Teil 6
[Mit Python automatisiert! ] Teil 1: Datei einstellen
Python-Anwendung: Datenverarbeitung # 3: Datenformat
Testgetriebene Entwicklung mit Django Teil 2
Erstellen Sie eine virtuelle Umgebung mit Python!
[Python] Mit DataReader Wirtschaftsdaten abrufen
Python-Datenstruktur mit Chemoinfomatik gelernt
Unit Test Log Ausgabe mit Python
Erstellen Sie mit SoX rauschgefüllte Audiodaten
Visualisieren Sie Ihre Daten ganz einfach mit Python Seaborn.
Automatisieren Sie einfache Aufgaben mit Python Part0
Python-Anwendung: Datenvisualisierung Teil 1: Grundlegend
[Mit Python automatisiert! ] Teil 2: Dateivorgang
Verarbeiten Sie Pubmed .xml-Daten mit Python
Erstellen Sie Github-Seiten mit Lektor Part 1
Datenanalyse beginnend mit Python (Datenvisualisierung 1)
Testgetriebene Entwicklung mit Django Teil 1
Datenanalyse beginnend mit Python (Datenvisualisierung 2)
Anwendung von Python: Datenbereinigung Teil 2: Datenbereinigung mit DataFrame