Pandasでobject型の文字列内の記号・特殊文字を置換する
Pandasでは文字列内に記号や特殊文字が混在していると、その文字列のデータ型がstr
型ではなくobject
型として扱われることがあります。
import pandas as pd
prices = ['$14,983.17','$15,321.76','$13,568.23']
df = pd.DataFrame(data=prices)
df
0
0 $14,983.17
1 $15,321.76
2 $13,568.23
df.dtypes
0 object
dtype: object
object
型の文字列内の記号や特殊文字を置換する場合は、replace
メソッドにregex=True
を指定し、置換する記号・特殊文字を正規表現として指定します。
df = df.replace({'\$': '', ',': ''},regex=True)
df
0
0 14983.17
1 15321.76
2 13568.23