Teradata® Package for Python Function Reference [リリース番号:17.10 リリース日付:2022/4]の翻訳です。
はじめに
Pythonでteradatamlデータフレームを作成し新しいカラムを追加する方法を説明します。
ライブラリとしてteradatamlを利用します。
teradatamlはTeradata Vantage用のPythonライブラリです。
基本操作
Vantageに接続する
python code
# 接続用ライブラリの宣言
import teradataml as tdml
# データベース接続
tdml.create_context(host = "IPアドレス",username='ユーザ名',password='パスワード')
テーブルを指定してデータを取得する
python code
# Customerテーブルのデータをteradatamlデータフレームに読み込む
teradataml_iris = tdml.DataFrame.from_table("iris_table")
## データフレームの中身を確認
teradataml_iris
結果を表示
sepallength sepalwidth petallength petalwidth target
idx
122 7.7 2.8 6.7 2.0 virginica
116 6.5 3.0 5.5 1.8 virginica
91 6.1 3.0 4.6 1.4 versicolor
143 6.8 3.2 5.9 2.3 virginica
95 5.7 3.0 4.2 1.2 versicolor
11 4.8 3.4 1.6 0.2 setosa
10 5.4 3.7 1.5 0.2 setosa
125 7.2 3.2 6.0 1.8 virginica
35 5.0 3.2 1.2 0.2 setosa
43 5.0 3.5 1.6 0.6 setosa
既存のカラムで演算により新しいカラムを作成します。
python code
# データフレームにnew_colと言うカラムを追加します
teradataml_iris2 = teradataml_iris.assign(new_col = teradataml_iris.sepallength * teradataml_iris.sepalwidth)
# データフレームの中身を確認
teradataml_iris2
結果を表示
sepallength sepalwidth petallength petalwidth target new_col
idx
17 5.1 3.5 1.4 0.3 setosa 17.85
143 6.8 3.2 5.9 2.3 virginica 21.76
0 5.1 3.5 1.4 0.2 setosa 17.85
116 6.5 3.0 5.5 1.8 virginica 19.50
144 6.7 3.3 5.7 2.5 virginica 22.11
11 4.8 3.4 1.6 0.2 setosa 16.32
125 7.2 3.2 6.0 1.8 virginica 23.04
10 5.4 3.7 1.5 0.2 setosa 19.98
74 6.4 2.9 4.3 1.3 versicolor 18.56
97 6.2 2.9 4.3 1.3 versicolor 17.98
カテゴリ変数を追加する
python code
# setosaカラムを追加する。targetカラムの値が"setosa"の時に1を立てる。
teradataml_iris = teradataml_iris.assign(drop_columns = False, setosa = teradataml_iris.target.str.contains('setosa'))
# versicolorカラムを追加する。targetカラムの値が"versicolor"の時に1を立てる。
teradataml_iris = teradataml_iris.assign(drop_columns = False, versicolor = teradataml_iris.target.str.contains('versicolor'))
# virginicaカラムを追加する。targetカラムの値が"virginica"の時に1を立てる。
teradataml_iris = teradataml_iris.assign(drop_columns = False, virginica = teradataml_iris.target.str.contains('virginica'))
# データフレームの中身を確認
teradataml_iris
結果を表示
sepallength sepalwidth petallength petalwidth target setosa versicolor virginica
idx
101 5.8 2.7 5.1 1.9 virginica 0 0 1
120 6.9 3.2 5.7 2.3 virginica 0 0 1
99 5.7 2.8 4.1 1.3 versicolor 0 1 0
61 5.9 3.0 4.2 1.5 versicolor 0 1 0
19 5.1 3.8 1.5 0.3 setosa 1 0 0
80 5.5 2.4 3.8 1.1 versicolor 0 1 0
59 5.2 2.7 3.9 1.4 versicolor 0 1 0
38 4.4 3.0 1.3 0.2 setosa 1 0 0
40 5.0 3.5 1.3 0.3 setosa 1 0 0
141 6.9 3.1 5.1 2.3 virginica 0 0 1
Vantageから切断する
python code
# データベース切断
tdml.remove_context()
おわりに
警告
この本書はTeradata Vantageドキュメンテーションよりトピックに必要な情報を抜粋したものです。掲載内容の正確性・完全性・信頼性・最新性を保証するものではございません。正確な内容については、原本をご参照下さい。
また、修正が必要な箇所や、ご要望についてはコメントをよろしくお願いします。