Pandas 在单个 dataRow 中写入具有自定义限制值的 CSV 文件

我有一个要求,我的列是固定的,但最后一个 dol(数据)值是这样分隔的“~”示例:数据:“a1~b1~c1~”在打印 csv 时如果正在使用


示例代码:


import pandas as pd 

temp="~".join(["amit1","amit2","amit3","amit4"])

df_cols = ["Record Type", "version", "data"]

df_rows = [{"Record Type":110002,"version":111.000,"data":temp +"~"}]

out_df=pd.DataFrame(df_rows, columns = df_cols)

print(out_df)

out_df.to_csv('fileName',sep='~',index=False,quotechar=" " )

并且输出 csv 在数据列 Record Type ~version~data 110002~111.0~ amit1~amit2~amit3~amit4~ //从这一行中我不想在amit1之前有任何空格


我想从数据列值中删除额外的空间


牛魔王的故事
浏览 105回答 2
2回答

Cats萌萌

由于您的使用quotechar=" "以及其中有空间的事实,添加的空间存在Record Type。用给定的to_csv关闭,即一个空格。Record Typequotechar你想用那个特定的来实现quotechar什么?你真的需要吗?import pandas as pd data_col = "~".join(["amit1","amit2","amit3","amit4"]) + "~"pd.DataFrame({"Record Type": 110002, "version": 111.000, "data": data_col}, [0])df_out.to_csv('fileName.csv',sep='~',index=False)Ps 请注意,如果提供pd.DataFrame()字典,您也不需要为其提供列名。

慕尼黑的夜晚无繁华

如果我不使用--quotechar="",则在我试图实现的用例之后,输出将是这样的。Record Type~version~data 110002~111.0~ "amit1~amit2~amit3~amit4~" - 见“我不想在字符串前后加上引号” - 我正在创建数据:“a1~b1~c~” - - 这里我的加入和分隔都是一样的。我正在使用多个动态输入形成数据值,因此我的数据列值不固定。我正在获取数组对象 - (这是单个数据值 - "~".join(["amit1","amit2","amit3","amit4"]) + "~)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python