0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

ヅカの芸名を自動生成するAIを作る(2):データ解析編

Last updated at Posted at 2022-07-21

これまでのあらすじ

こちらを参照

宝塚の芸名を自動生成するAIを作るのが目標。
Wikipediaから宝塚の生徒一覧の名前を集めたところ。

記事を書いた後で収録漏れに気づいて、全期分の収録漏れチェックや、NameDividerによる姓名分離の修正に結構手間かかった…

今回やること

  • 宝塚の生徒一覧をpandas.DataFrameに取り込む
  • 少し解析してみる

DataFrameに取り込み

import pandas as pd

#定数
MAX_PERIOD = 108
NAME_TEMP = "takaraduka_actress/takaraduka_actress_{}period.csv"

actress_data = pd.DataFrame()

for i in  range(MAX_PERIOD):
    period = i + 1
    try:
        period_data = pd.read_csv(NAME_TEMP.format(period))
        period_data.insert(0, '', period)
        actress_data = pd.concat([actress_data, period_data])
    except FileNotFoundError:
        print('{} period is none'.format(period))
期	芸名	読み仮名	誕生日	出身地	出身校	芸名の由来	愛称	役柄	配属	退団年	備考	身長
0	1	秋田 衣子	あきた きぬこ	NaN	NaN	NaN	百人一首	NaN	NaN	-	不明	妹は瀧川末子	NaN
1	1	大江 文子	おおえ ふみこ	2月20日	大阪府大阪市	NaN	百人一首	NaN	男女両役	-	1921年	NaN	NaN
2	1	逢坂 關子	おおさか せきこ	8月2日	大阪府	NaN	百人一首	NaN	娘役	-	1929年	NaN	NaN
3	1	小倉 みゆき	おぐら みゆき	2月20日	鹿児島県	NaN	百人一首	NaN	男役	-	1919年	NaN	NaN
4	1	雄嶋 艶子	おじま つやこ	NaN	NaN	NaN	百人一首	NaN	NaN	-	不明	女優・二條玉子	NaN
...	...	...	...	...	...	...	...	...	...	...	...	...	...
33	108	朝比奈 天	あさひな てん	10月27日	兵庫県神戸市	愛徳学園中学	NaN	てん	男役	宙組	NaN	NaN	173㎝
34	108	桜之 真緒	さくらの まお	3月1日	岡山県真庭市	就実高校	NaN	さっくん、マーチ	男役	月組	NaN	NaN	173㎝
35	108	華路 らら	はなみち らら	12月9日	大阪府高槻市	市立第二中学	NaN	らぁ、らら	娘役	花組	NaN	NaN	165㎝
36	108	風希 咲玖	かざき さく	12月17日	兵庫県西宮市	梅花高校	NaN	かざき	男役	星組	NaN	NaN	175㎝
37	108	白霧 椿	しらぎり つばき	10月1日	大阪府大阪市	帝塚山学院高校	NaN	くー、ヒデキ	男役	月組	NaN	NaN	176㎝
4740 rows × 13 columns

芸名の解析

name = actress_data['芸名'].str.split(' ', expand = True)
name.rename(columns = {0:'', 1:''}, inplace=True)

まず芸名を姓名に分離したDataFrameを作成し、これをもとに解析していく。

単純にdescribe()してみた結果は以下。

           姓     名
count   4740  4740
unique  3130  2420
top        泉   ひかる
freq      11    34

姓の方がユニーク性が高い。
なお「泉 ひかる」さんは存在しなかった。

姓の解析

多い姓

for row in name[''].value_counts().iteritems():
    print(row)

Top10までを出そうとしたら、同順位がそれなりにあったため、8人以上いる姓のみ抜き出す。

出現回数
'泉' 11
'東' 11
'渚' 10
'紅' 10
'大和' 10
'曙' 10
'園' 9
'暁' 8
'麗' 8
'紫' 8
'摩耶' 8
'葵' 8
'橘' 8
'白鳥' 8
'若草' 8
'蘭' 8

実際にありそうな姓(泉、東、橘など)もあれば、創作でしかみないような姓(紅、暁、麗など。実在するかも知らんが…)もある。

どの程度重複しているのかを確認してみた。

name[''].value_counts().value_counts(normalize = True, sort = False)
11    0.000639
10    0.001278
9     0.000319
8     0.002875
7     0.004792
6     0.007029
5     0.015335
4     0.028754
3     0.055911
2     0.150479
1     0.732588
Name: 姓, dtype: float64

重複なしが全体の7割強で概ねユニークなようだ。

上の8人以上重複している姓を見ていて気になったのが、紅・紫といった色、東と方角の姓。
色と方角など気になるジャンルを調べてみたい

出現回数
1
0
0
2
1
0
8
0
3
0
10
0
1
2

「銀」はいずれも「しろがね」読みであった。
紅と紫がぶっちぎりで人気である。

方角

方角 出現回数
11
西 0
7
2

「東」はいずれも「あずま」読みである。
東西南北姓は、77期の「南 しずか」さんが最後なので、ここ30年いない。

植物

植物 出現回数
6
1
8
8
6
0
4
4
0
0

日本人らしい「桜」は複数人いるが、葵・橘ほどではなく、やや古風な感のある「藤」と同数である。
「桜」は41〜85期、「藤」は29〜56期なので、桜の方が現代的な姓のようだ。

「樹」は男役でいそうな気はしたので、いないのは意外。

季節

季節 出現回数
4
5
3
0

冬の人気がない。春、夏は回数が多いので、暖かい・明るいイメージのある季節の方がいいのだろうか。

自然

要素 出現回数
0
2
2
2
2
0
0
0
1
0
大地 1
2
4
0
7
0
0
0
2
0
0
0

花鳥風月、雪月花、四元素(水、風、火、土)、日(月があるので対比、+陽)、陸海空(+大地、宇宙の意で宙)、星(宝塚の組名にある。他の花組、月組、雪組、宙組は前述に含まれる)のうち、すでに調査済みのものを除く。

姓に含まれる文字

姓を一つずつ取り出し、使われている文字をカウントする

d = dict()
for index, data in name[''].iteritems():
    for s in data:
        d.setdefault(s, 0)
        d[s] = d[s] + 1
d2 = sorted(d.items(), key = lambda  x : x[1], reverse = True)

使われている文字の総数は、850字あった。

50回以上使われている文字のみ記載する

[('美', 203),
 ('月', 197),
 ('花', 174),
 ('城', 155),
 ('野', 145),
 ('千', 128),
 ('路', 107),
 ('風', 98),
 ('乃', 97),
 ('大', 92),
 ('山', 92),
 ('川', 91),
 ('真', 86),
 ('高', 84),
 ('白', 80),
 ('水', 80),
 ('海', 80),
 ('里', 73),
 ('朝', 72),
 ('原', 69),
 ('華', 69),
 ('若', 68),
 ('夏', 67),
 ('咲', 67),
 ('波', 66),
 ('小', 65),
 ('羽', 65),
 ('奈', 64),
 ('瀬', 62),
 ('松', 60),
 ('春', 58),
 ('木', 58),
 ('愛', 58),
 ('麻', 58),
 ('天', 56),
 ('香', 55),
 ('彩', 54),
 ('音', 53),
 ('三', 51),
 ('園', 51),
 ('宮', 51),
 ('輝', 51),

先ほどの気になって調べた姓の出現回数はほとんど一文字姓だが、その漢字の出現率をついでに調べよう。

文字 文字=姓個数 出現回数
1 80
0 5
0 2
2 8
1 25
0 0
8 48
0 0
3 5
0 0
10 18
0 10
1 2
2 15
11 28
西 0 3
7 47
2 15
6 33
1 13
8 8
8 9
6 30
0 12
4 174
4 69
0 58
0 42
4 58
5 67
3 36
0 3
0 39
2 98
2 197
2 35
2 80
0 2
0 2
0 36
1 16
0 1
(大)地 1 9
2 80
4 35
0 3
0 45
0 6
0 26
0 0
2 3
0 30
0 0
0 2

なかなか興味深い

色だが、「白」は使用率が高い。純潔なイメージだろうか。「紫」も使用率が高い。宝塚のシンボルすみれの花が紫だからか?
「青」は「蒼」も使われるが、「赤」は「紅」しかほぼ使われない。「緑」は「碧」の方が多い。
「金」は実際の姓では珍しくない文字だが、一切使われていない。煌びやかなイメージはあるはずだが、逆に悪趣味なのかもしれない。

東西南北では、なぜか「西」の人気が際立って低く、「南」の人気が高い。どうも「南」はヅカの芸名でよく使われる他の文字と組み合わせやすいようだ。
他の3方角は組み合わせやすさは似たり寄ったりだと思うのだが、なぜか「東」が高い。

植物だと、女性らしさがあるからか、「花」「華」は使用頻度が高い。単独では使わない「木」「樹」も増える。

季節は、やはり「春」「夏」は高いが、「冬」が低い。方角で「北」が少ないことと相関があるのだろうか?

自然は、大地は「地」としてカウントした。
「風」「月」「水」のカウントが高く、「火」「土」「陸」「地」は低い。「火」が低いのは「火」には暖かいイメージより、熱いなど暴力的なイメージがあるからだろうか。「土」「陸」「地」などは華やかでないイメージがあるのだろう。
「月」は頻度が高いが、「日」「陽」は低い。一般的に「陽」の字は女性名に用いられるが(感覚的には夜をイメージする「月」より多そうだ)。
「風」「空」「雲」「鳥」がそれなりに使われているのは、自由のイメージかと思う。
「水」「海」ともに高い。透明なイメージと他の文字との組み合わせやすさだろうか。

名の解析

名の解析はさっくり行きたいと思う。
解析したコードは姓とほぼ同じなので省略する。

多い名

出現回数
'ひかる' 34
'薫' 24
'ゆかり' 24
'京子' 24
'まり' 24
'のぼる' 22
'みどり' 21
'かほる' 20
'ひとみ' 19
'みちる' 19

ひらがなに開いているとはいえ、存外普通の名前が多い。

「京子」、「のぼる」、「かほる」は、ここ数十年はなく、一昔前の名前であることが伺われる。
それ以外は比較的どの年代にも出てくるが、年代が偏ることもある。例えば「ひとみ」はここ20年では少なく(有名なのはトヨタの御曹司と結婚し、民放ドラマにも出ていた「星蘭ひとみ」さんだろうか)、40期代〜70期代に多い。

重複率は次のとおり。

34    0.000413
24    0.001653
22    0.000413
21    0.000413
20    0.000413
19    0.000826
18    0.000413
17    0.001240
16    0.000826
15    0.000826
14    0.000826
13    0.001653
12    0.001240
11    0.002479
10    0.004545
9     0.007851
8     0.005785
7     0.010331
6     0.015289
5     0.018595
4     0.043388
3     0.059917
2     0.140496
1     0.680165

やはりユニーク性は高い。が、姓ほどではないようだ。

名に含まれる文字

姓と同じく、50回以上使われている文字のみ記載する

[('子', 1144),
 ('み', 434),
 ('か', 366),
 ('り', 350),
 ('美', 344),
 ('る', 287),
 ('千', 225),
 ('ゆ', 224),
 ('さ', 205),
 ('ま', 181),
 ('あ', 177),
 ('い', 175),
 ('き', 172),
 ('ら', 168),
 ('ひ', 157),
 ('な', 133),
 ('代', 110),
 ('の', 107),
 ('つ', 107),
 ('里', 104),
 ('と', 103),
 ('し', 93),
 ('真', 92),
 ('れ', 87),
 ('ち', 84),
 ('や', 82),
 ('う', 75),
 ('ほ', 71),
 ('花', 69),
 ('お', 63),
 ('は', 62),
 ('ん', 61),
 ('た', 60),
 ('す', 57),
 ('く', 57),
 ('奈', 55),
 ('香', 54),
 ('こ', 54),
 ('由', 53),
 ('希', 50),

圧倒的ひらがな…

子については、各期ごとの出現回数をプロットしてみた

image.png

20期(1930年入団)から27期(1937年入団)にかけてピークを迎え、その後激減。
51期(1965年入団)からは10人満たなくなり、73期(1987年入団)からはほぼ絶滅、95期(2005年入団)以降は一人もいない。

姓の時も思ったが、各10年代ごとの姓名や使われている文字の傾向を調べてみたいが、本記事は一旦ここまでにする。

思ったより解析・分析が面白いので、解析編がまだ続く。続きはこちら

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?