import pandas as pd def katakana_to_hiragana(text): d = {i: i - 0x60 for i in range(ord('ァ'), ord('ァ') + 86)} return text.str.translate(d) def hiragana_to_katakana(text): d = {i - 0x60: i for i in range(ord('ァ'), ord('ァ') + 86)} return text.str.translate(d) s = pd.Series(['あいう', 'アイウ', 'あqwせdrftgyふじこlp;']) katakana_to_hiragana(s) # 0 あいう # 1 あいう # 2 あqwせdrftgyふじこlp; hiragana_to_katakana(s) # 0 アイウ # 1 アイウ # 2 アqwセdrftgyフジコlp;