在Python中使用Polars(https://www.pola.rs/)生成的文本输出中,我可以轻松地删除引号吗?

xtfmy6hx  于 2023-01-29  发布在  Python
关注(0)|答案(1)|浏览(123)

我有一个Python Flask应用程序,最近从使用Pandas切换到使用Polars来处理一些 Dataframe 。相关代码如下所示:

data = { 'Text': ['Virginia Woolf, Mrs. Dalloway', 'College website corpus', 'Presidential inaugural speeches', 'Federalist Papers', 'British Novels', 'YOUR TEXT'], 
             'To Be Frequency': [28.3, 16.7, 31.8, 39.8, 31.4, results[1]] }
df = pd.from_dict(data)

# textresult = (df.sort_values(by=['To Be Frequency'], ascending=False)).style

# See https://pola-rs.github.io/polars/py-polars/html/reference/config.html for complete list of Polars.Config settings
    pd.Config.set_tbl_hide_column_data_types(True)
    pd.Config.set_tbl_hide_dataframe_shape(True)
    pd.Config.set_fmt_str_lengths(40)
    pd.Config.set_tbl_width_chars(200)

textresult = df.sort( 'To Be Frequency' )._repr_html_( )  # convert the result to HTML because a simple string won't do

textresult输出如下所示:
Current textresult dataframe
我正在寻找任何方法来删除textresult输出中的双引号。有什么建议吗?
我尝试了所有能想到的pd.Config值以及声明data字典的不同方法,我还搜索了任何可以让我轻松“隐藏”引号的CSS,但到目前为止没有任何效果。
我期待着你在张贴的图像中看到的表,但没有引号周围的“文本”值。
---更新---根据收到的评论,我发现一个简单的print(df)返回控制台中的框架,文本值周围没有引号,但我需要适合在Flask模板中呈现的HTML输出,所以问题的根源似乎只是在.repr_html()表示中?
---更新---刚才我在Polars问题队列中添加了一个enhancement request,针对这个问题我写了一个测试,试图修改py-polars/polars/_html.py中的相关函数,但无法找到一个优雅的解决方案;我只是对@HTMLFormatter和相关特性还不够了解,所以,我的简单修复方法是将代码修改为如下所示:

htmlresult = df.sort( 'To Be Frequency' )._repr_html_( )  # convert the result to HTML because a simple string won't do
    textresult = htmlresult.replace(""", "")

这是一个组装,但一个快速的解决方案,我非常简单的使用极地。

f1tvaqid

f1tvaqid1#

您需要strip

In [37]: df = pl.DataFrame({'Text': ['"College website corpus"']})

In [38]: df['Text'][0]
Out[38]: '"College website corpus"'

In [39]: df['Text'].str.strip('"')[0]
Out[39]: 'College website corpus'

相关问题