実務で扱う帳票の中には、以下のように、罫線の位置が小数点を表しているケースがあります。
このようなケースも、IQ Botのカスタムロジックを使えば処理できます。
#サンプルコード
カスタムロジック(小数点付加)の実装例
# 値を保存する変数: table_values
#表の操作をするときに必ず入れるコード(最初)
import pandas as pd
df = pd.DataFrame(table_values)
#############################################
# ↓↓↓ ここからが今回の処理 ↓↓↓
#############################################
import re
def decimalAdd(num, digit):
num = re.sub("\\D","",num)
seisu = str(num)[:-digit]
shosu = str(num)[-digit:]
result = str(seisu) + "." + str(shosu)
return result
df["単価"] = df["単価"].apply(decimalAdd,digit=2)
#############################################
# ↑↑↑ ここまでが今回の処理 ↑↑↑
#############################################
#表の操作をするときに必ず入れるコード(最後)
table_values = df.to_dict()
#応用例
上記のサンプルコードの細かい説明は省きますが、応用する場合に変える必要があるのは以下の部分だけです。
カスタムロジック(小数点付加)の実装例
df["単価"] = df["単価"].apply(decimalAdd,digit=2)
変更箇所は2か所。
-
"単価"
の部分を処理したい列名に変えます。(2つあるので2つとも) -
digit=2
は、下2桁を小数とみなすという意味です。下3桁を小数にしたい場合は、digit=3
というふうに変えます。
#コードの意味がどうしても気になる人は……
以下の記事を読みながら上記のコードを眺めてみると、意味がわかると思います。