假设您有一个Pandas DataFrame,其中正文中包含某种数据,列和索引名称中包含数字。
现在假设我们想要根据比较索引和列的方式以某种方式操作数据框。考虑以下内容。
其中,如果索引大于列,则用“k”替换字母:
这是一个重复的问题吗? 我在谷歌上搜索了
>>> data=np.array([['a', 'b', 'c'], ['d', 'e', 'f'], ['g', 'h', 'i']])
>>> columns = [2, 4, 8]
>>> index = [10, 4, 2]
>>> df = pd.DataFrame(data, columns=columns, index=index)
>>> df
2 4 8
10 a b c
4 d e f
2 g h i
现在假设我们想要根据比较索引和列的方式以某种方式操作数据框。考虑以下内容。
其中,如果索引大于列,则用“k”替换字母:
2 4 8
10 k k k
4 k e f
2 g h i
当索引等于列时,用“U”替换字母:
2 4 8
10 k k k
4 k U f
2 U h i
当列大于索引时,用'Y'替换字母:
2 4 8
10 k k k
4 k U Y
2 U Y Y
为了让问题对所有人都有用:
有什么快速的方法来进行这个替换?
有什么最简单的方法来进行这个替换?
最小化示例的速度结果
jezrael:
556 µs ± 66.1 µs每个循环(平均值±7次运行的标准偏差,每个1000个循环)
user3471881:
329 µs ± 11.4 µs每个循环(平均值±7次运行的标准偏差,每个1000个循环)
thunderwood:
4.65毫秒±252微秒每个循环(平均值±7次运行的标准偏差,每个100个循环)
这是一个重复的问题吗? 我在谷歌上搜索了
pandas replace compare index column
,并且排名靠前的结果有:
然而,我感觉以上三篇文章都没有涉及到是否a)可能或b)如何进行比较。