有一个巨大的矩阵,它的元素是1到15之间的数字。我想把这个矩阵转换成一个元素是字母的矩阵,这样1变成“a”,2变成“b”,依此类推。举个简单的例子:
import pandas as pd
import numpy as np, numpy.random
numpy.random.seed(1)
A = pd.DataFrame (np.random.randint(1,16,10).reshape(2,5))
# A 0 1 2 3 4
# 0 6 12 13 9 10
# 1 12 6 1 1 2
预期产量为
# B 0 1 2 3 4
# 0 f l m i j
# 1 l f a a b
我可以用一个循环来做,但是对于一个巨大的矩阵,它似乎不符合逻辑。应该有一种更像Python的方式来做这件事。在R
中,chartr
是此类替换的函数。对于1到9之间的数字,它的工作原理如下:chartr("123456789", "ABCDEFGHI", A)
。Python中的等价物是什么
这是一种方式。如果可能的话,我建议不要通过
pandas
使用lambda
和apply
,因为它们是循环的,并且有开销您可以使用
chr
:相关问题 更多 >
编程相关推荐