Skip to content

Dataframe columns of lists of strings render the strings as ASCII numbers instead of strings #884

Open
@shrianshChari

Description

When I attempt to render a dataframe that contains a column that is a list of strings (in this case my dataset is called spl and the column is titled team), the strings will be displayed correctly in Streamlit (run locally on my machine) but not when it gets translated using stlite (run using stlite sharing):

spl['team'].iloc[0:5]

Output in Streamlit:

image

Output in stlite:

image

When I take the first row of the output from stlite and convert each number into its corresponding ASCII character value,

>>> s = '91,34,83,110,111,114,108,97,120,34,44,34,71,111,108,101,109,34,44,34,71,101,110,103,97,114,34,44,34,90,97,112,100,111,115,34,44,34,70,111,114,114,101,116,114,101,115,115,34,44,34,83,116,97,114,109,105,101,34,93'
>>> s = s.split(',')
>>> c = list(map(lambda x: chr(int(x)), s))
>>> ''.join(c)
'["Snorlax","Golem","Gengar","Zapdos","Forretress","Starmie"]'

It seems that it is able to recognize that spl['team'] is a column that contains a list of strings, as when I run:

spl['team'].iloc[0]

I get the same output for both Streamlit and stlite:
image

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions