使用pandas写入CSV时,单独定义要引用的列

z9smfwbn  于 2023-04-18  发布在  其他
关注(0)|答案(1)|浏览(83)

我想将我的pandas dataframe转换为csv文件。我的dataframe有100多列不同的数据类型和不同的(日期和数字)格式。这使得创建满足要求的csv文件变得困难:字符串在引号中,数字和日期不在引号中。例如,我有这样的日期值:24.07.2019 08:31:28.764000000不应该被引用,但字符串必须被引用。
我试过所有不同的pandas的to_csv()组合:

  • quoting=csv.QUOTE_NONNUMERIC
  • quoting=csv.QUOTE_ALL
  • quoting=csv.QUOTE_MINIMAL
  • quoting=csv.QUOTE_NONE

最合适的是QUOTE_NONNUMERIC,但上面提到的日期无论如何都会引用。
有没有办法在不遍历所有值的情况下,单独定义哪些列应该加引号,哪些列不应该加引号?

k5hmc34c

k5hmc34c1#

这个链接中的第二个答案对我有效。Quote only the required columns using pandas to_csv

columnsList = data.columns #(or specific columns that you need)
for col in columnsList:
   data[col] =  data[col].apply(lambda x: "" + str(x) + "")

相关问题