スポンサーリンク
pandasのDataFrameで列同士を結合
まずは、csvファイルを読み込みます。
regionとweatherの列名をつけています。
import pandas as pd data = pd.read_csv('in.txt', names=('region', 'weather'))
単純に、regionとweatherの列を結合する場合には、+演算子で下記のように書けます。
dataConnect = data.region + data.weather
別途、文字列を追加する場合には、下記のように書くこともできます。
dataConnect = data.region + "地域の天気は" + data.weather + "です。"
列が文字列型になっていない場合は結合の際にエラーとなってしまうので、
astype(str)で文字列に変換します。
※ワンポイントであればawkを使うのも手だと思います。
import pandas as pd data = pd.read_csv('in.txt', names=('year', 'month', 'date')) dataConnect = data.year.astype(str) + "年" + data.month.astype(str) + "月" + data.date.astype(str) + "日"
スポンサーリンク
サンプルコード1
例えば、下記のin.txtがあったとします。
$ cat in.txt E,雨 F,くもり G,晴れ
下記がサンプルコードになります。
$ cat sample.py #!/usr/bin/env python3 # coding: UTF-8 import pandas as pd data = pd.read_csv('in.txt', names=('region', 'weather')) dataConnect = data.region + data.weather print(dataConnect) dataConnect = data.region + "地域の天気は" + data.weather + "です。" print(dataConnect)
下記が実行結果になります。
$ ./sample.py 0 E雨 1 Fくもり 2 G晴れ dtype: object 0 E地域の天気は雨です。 1 F地域の天気はくもりです。 2 G地域の天気は晴れです。 dtype: object
スポンサーリンク
サンプルコード2
例えば、下記のin.txtがあったとします。
$ cat in.txt 2018,1,1 2018,1,2 2018,1,3 2018,1,4
下記がサンプルコードになります。
$ cat sample.py #!/usr/bin/env python3 # coding: UTF-8 import pandas as pd data = pd.read_csv('in.txt', names=('year', 'month', 'date')) dataConnect = data.year.astype(str) + "年" + data.month.astype(str) + "月" + data.date.astype(str) + "日" print(dataConnect)
下記が実行結果になります。
$ ./sample.py 0 2018年1月1日 1 2018年1月2日 2 2018年1月3日 3 2018年1月4日 dtype: object
スポンサーリンク