我有一个numpy或pandas数据帧,它在大多数单元格中都包含数值,另一方面还有备用字符值(它们不是基于列的,所以我不能使用标签编码器(。我正在寻找一种方法,将这些可以在任何地方的稀疏字符值转换为ASCII代码,以便在深度学习模型中为数组提供信息。在那之后,我需要知道哪些是被转换的,这样我才能将它们重新转换回字符。任何想法都将不胜感激!
示例值可以是第1行上的(1,2,f,5,3(和某行k上的(7,k,1,j,9(。这在numpy数组或pandas数据帧中。问题是,我如何将字母编码为ascii以便有数字,然后如何将它们解码回来?
一个可能的解决方案是使用ord()
和chr()
来使用"表示该字符的Unicode码点的整数";。
>>> df
characters
0 f
1 k
>>> df["encoded"] = df["characters"].apply(ord)
>>> df["encoded"]
0 102
1 107
>>> df["decoded"] = df["encoded"].apply(chr)
>>> df["decoded"]
0 f
1 k