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. ..
% pip install faker
% faker --version
faker 4.0.2
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.
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)
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.
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 |
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 |
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. ** **.
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