【问题标题】:save dataframe containing lists as csv file将包含列表的数据框保存为 csv 文件
【发布时间】:2022-01-18 21:14:23
【问题描述】:

我创建了如下的DataFrame

df = pd.DataFrame({'name': imgname, 'pose': pose})

其中 imgname 是字符串列表,例如 ['image1','image2' ...] 姿势是列表的列表,例如姿势 = [array([ 55.77614093, 8.45208199, 2.69841043, 2.17110961]), 数组([ 66.61236215, 5.87653161, -31.70704038, -21.68979529])]

我使用这一行将 Dataframe 写入 csv 文件

df.to_csv('dataset.csv',index = 'False')

但是,姿势 col 被转换为带有 '\n' 和额外空格的字符串

如何将值保存为 csv 格式的数字

【问题讨论】:

  • 你能给我看看你的数据框的打印输出吗?

标签: python pandas export-to-csv


【解决方案1】:

对于pose,您可能并不意味着arrays 作为列表列表。 如果您删除 array 部分,您的代码将起作用 -

import pandas as pd    
imgname = ['image1','image2'] 
pose = [[ 55.77614093, 8.45208199, 2.69841043, 2.17110961],[6.61236215, 5.87653161, -31.70704038, -21.68979529]]
df = pd.DataFrame({'name': imgname, 'pose': pose})

df 输出 -

name    pose
0   image1  [55.77614093, 8.45208199, 2.69841043, 2.17110961]
1   image2  [66.61236215, 5.87653161, -31.70704038, -21.68...

之后,

df.to_csv('dataset.csv',index = 'False')

工作得很好。

【讨论】:

    【解决方案2】:
    df = pd.DataFrame({'Data': [np.array([1, 2, 3, 4]), np.array([5,6,7,8])], 'IMAGE' : ['IMAGE1', 'IMAGE2']})
    print (df)
    
    df.to_csv('dataset.csv',index = 'False')
    

    结果如下:

    【讨论】:

      猜你喜欢
      • 2018-05-31
      • 2018-06-09
      • 2016-05-30
      • 1970-01-01
      • 2018-09-11
      • 2016-08-20
      • 2020-03-29
      • 2016-04-15
      • 2016-08-19
      相关资源
      最近更新 更多