我有一个n × m的Pandas DataFramedf
定义如下。(我知道这不是最好的方法。这对于我在实际代码中尝试做的事情是有道理的,但这将是本文的TMI,所以请相信我,这种方法可以在我的特定情况下使用)
>>> df = DataFrame(columns=['col1'])
>>> df.append(Series([None]), ignore_index=True)
>>> df
Empty DataFrame
Columns: [col1]
Index: []
我将列表存储在此DataFrame的单元格中,如下所示。
>>> df['column1'][0] = [1.23, 2.34]
>>> df
col1
0 [1, 2]
由于某种原因,DataFrame将此列表存储为字符串而不是列表。
>>> df['column1'][0]
'[1.23, 2.34]'
我有两个问题要问你。
- 为什么DataFrame将列表存储为字符串,并且有解决此问题的方法?
- 如果没有,那么是否有Python方式将这个字符串转换为列表?
更新资料
我正在使用的DataFrame已保存并从CSV格式加载。这种格式而不是DataFrame本身将列表从字符串转换为文字。