避免将列表存储为 pandas 中的字符串

Avoid storing list as string in pandas

我有一个 pandas 数据框,其中包含一个包含列表

的列
df = pd.DataFrame({'ID': ['ID1', 'ID2'], 
                    'colA': [['AB', 'CD'], ['AB']]})
df

    ID  colA
0   ID1 [AB, CD]
1   ID2 [AB]

当我在 dataframe 中保存时,它会将具有多个值的列表转换为一个字符串,并使用引号将单个值保留下来

ID, colA
ID1, "['AB', 'CD']"
ID2,['AB']

第二行未存储为字符串,因为它在列表中仅包含一个值。

我再次阅读此 csv 时遇到问题,因为它会将数据转换为:

    ID  colA
0   ID1 ['AB', 'CD']
1   ID2 ['AB']

我怎样才能避免这种情况?我想这样读取我的数据

    ID  colA
0   ID1 [AB, CD]
1   ID2 [AB]

to_json

df.to_json('my.json')
pd.read_json('my.json')

    ID      colA
0  ID1  [AB, CD]
1  ID2      [AB]