numpy.tile()

numpy.tile()

numpy.tile()

 numpy.tile(A, reps) はスカラーまたは配列 A をタイル状に敷き詰める関数 です。reps で A の個数を指定します。

# NUMPY_TILE

# In[1]

import numpy as np

# [0,1]を3個並べる
a = np.tile([0, 1], 3)

print(a)
[0 1 0 1 0 1]

 reps にリスト [a, b] を渡すと、配列を縦に a 個、横に b 個並べます。

# In[2]

# [0,1]を縦に3個、横に2個並べる
b = np.tile([0, 1], [3, 2])

print(b)
[[0 1 0 1]
 [0 1 0 1]
 [0 1 0 1]]

 第 1 引数 A に 2 次元配列を渡すこともできます。

# In[3]

# 2次元配列を定義
x = np.array([[1, 2],
              [3, 4]])

# xを横に3個並べる
c = np.tile(x, 3)

print(c)
[[1 2 1 2 1 2]
 [3 4 3 4 3 4]]

 2 次元配列を縦横に並べるコードです。

# In[4]

# xを縦に2個、横に3個並べる
d = np.tile(x, [2, 3])

print(d)
[[1 2 1 2 1 2]
 [3 4 3 4 3 4]
 [1 2 1 2 1 2]
 [3 4 3 4 3 4]]

【技術英語の豆知識】tile はつまるところタイルなのです

 tile を英英辞典で調べてみると、「壁や床を覆うために使用される、焼き粘土または他の材料でできた平らな正方形状の部品」みたいなことが英語で書いてありました。まあ、タイルはタイルですね。日本では浴室に敷き詰められていたりしますが ... よく考えると私の家の浴室はタイルではありませんでした。身近なようで、案外タイルと無縁な生活を送っている人も多いかもしれません。それはともかくとして、今回紹介した関数 numpy.tile()、配列の並べ方をタイルにたとえるなんて、なかなか面白いネーミングセンスですよね。

 他にも読書しながら IT 分野で使われそうな英語を拾い集めてみました。

・integrate systems
 システムを構築する

 この場合の integrate は「積分」ではないので注意。

・employment of numerical computations
 数値計算の利用

・portable to all platforms
 すべてのプラットフォームに移植可能な

 portable は「携帯できる、どこにでも持ち運べる」の意。Python は Windows, Mac, LINUX ... どこでも使える。だから Python はとっても portable.

・key to fostering cooperation
 共同作業を促進するカギ

 動詞の foster は「育てる、養育する」の意。
 目的語が抽象名詞なら「促進する」となる。

・discretion of the sellar
 売り手の裁量