Pandas style.hide() 试图转义提供的变量中的引号

问题描述 投票:0回答:1

我在这里犯了一个基本错误。我需要以编程方式预先创建要隐藏的所有列的字符串[这是由于 pandas style.hide() 的行为,特别是规范中的以下内容:“...指定的数据行/列被隐藏,但轴索引本身和名称保持不变”。它不允许我一次隐藏一列]。 下面是一个简化的工作示例,但实际上我有一个多索引列,我需要在多个父级之间隐藏某些子列。问题是 hide() 没有“escape=False”参数,因此它不会转义我提供的字符串“str_hide”中的引号。我确信这是使用一些字符串操作的 1 分钟修复...因此是我的问题的“基本错误”部分。您能否建议如何使第二部分发挥作用?谢谢。

#Init
np.random.seed(0)
df = pd.DataFrame(np.random.randn(10,4), columns=['A','B','C','D'])

#This works
# sdf = df.style.hide(['A', 'B'], axis='columns')

#This does not work
str_hide = "\'A\', \'B\'"
print(str_hide)  #Looks the same as above but is interpreted differently below
sdf = df.style.hide([str_hide], axis='columns')
pandas styles hide
1个回答
0
投票

IIUC用途:

sdf = df.style.hide([x.strip("\' ") for x in str_hide.split(',')], axis='columns')
© www.soinside.com 2019 - 2024. All rights reserved.