使用pandas编写数据框来优化是不正确的

我有df

 day 2016-03-01 [00051f002f5a0c179d7ce191ca2c6401, 00102b98bd9... 2016-03-02 [00102b98bd9e71da3cf23fd1f599408d, 0012ea90a6d... 2016-03-03 [00051f002f5a0c179d7ce191ca2c6401, 00102b98bd9... 

我想excel ,但事后我得到

 day 2016-03-01 "['00051f002f5a0c179d7ce191ca2c6401' '00102b98bd9e71da3cf23fd1f599408d' '00108f5c5de701ac4386e717a4d07d5b' ..., 'null' 'test017' 'undefined']" 2016-03-02 "['00102b98bd9e71da3cf23fd1f599408d' '0012ea90a6deb4eeb2924fb13e844136' '0019b08bc9bb8da21f3b8ecc945a67d3' ..., 'test4' 'undefined' 'xx6da37101dffabe00e5d636c01719b6']" 2016-03-03 "['00051f002f5a0c179d7ce191ca2c6401' '00102b98bd9e71da3cf23fd1f599408d' '0012ea90a6deb4eeb2924fb13e844136' ..., 'test017' 'undefined' 'xx6da37101dffabe00e5d636c01719b6']" 

我用df.to_excel('name.xlsx') 。 我不明白,为什么不用逗号在第二栏写下清单。 我早些时候做到了,它按预期工作,但现在不行。

你应该可以使用:

 df['ColumnID'] = df['ColumnID'].astype(str) 

在你的列与列表把它作为一个string,这应该保留逗号。

这是一个完整的工作示例:

 # create sample dataframe df = pd.DataFrame({'day':[1,2,3],'list':[['a','b','c'],['d','e','f'],['g','h','i']]}) # convert list column to string df['list'] = df['list'].astype(str) # export excel file writer = pd.ExcelWriter("out.xlsx", engine = 'xlsxwriter') df.to_excel(writer, sheet_name="data") writer.save() 

这导致以下excel文件:

在这里输入图像说明