.upper() をベクトル化する
NumPy では、配列要素に Python のメソッドや関数を使いたい場面がよくあります。for ループでも実現できますが、ベクトル化された処理のほうがはるかに高速かつ効率的です。そこで np.vectorize() の活用を考えましょう。
names という配列があり、名と姓が入っています:
names = np.array([["Izzy", "Monica", "Marvin"],
["Weber", "Patel", "Hernandez"]])
DataCamp で学んだ Python のメソッド .upper() を使って、配列内のすべての名前の文字を大文字にしたいとします。復習として、.upper() は 文字列メソッド なので、文字列インスタンスに対して呼び出す必要があります: str.upper()。
あなたの課題は、この Python メソッドをベクトル化することです。numpy は np として読み込まれており、names 配列も利用できます。
この演習はコースの一部です
NumPy入門
演習の手順
- Python の文字列メソッド
.upper()から、vectorized_upperという名前のベクトル化関数を作成します。 vectorized_upper()をnames配列に適用し、結果の配列をuppercase_namesとして保存します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Vectorize the .upper() string method
vectorized_upper = ____
# Apply vectorized_upper to the names array
uppercase_names = ____
print(uppercase_names)