Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/kubernetes/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 删除重复的分隔符_Python_Python 3.x_Pandas_Dataframe - Fatal编程技术网

Python 删除重复的分隔符

Python 删除重复的分隔符,python,python-3.x,pandas,dataframe,Python,Python 3.x,Pandas,Dataframe,我正在从excel表格中阅读以下列 CM FOTO 1 FOTO 2 FOTO 3 FOTO 4 some text some 744905_L050_01.jpg NaN 744905_B001_01.jpg NaN some text some NaN NaN Na

我正在从excel表格中阅读以下列

CM              FOTO 1              FOTO 2              FOTO 3              FOTO 4           
some text some  744905_L050_01.jpg  NaN                 744905_B001_01.jpg  NaN
some text some  NaN                 NaN                 NaN                 NaN
some text some  621059_W034_01.jpg  621059_W034_02.jpg  621059_W034_03.jpg  NaN     
some text some  NaN                 NaN                 NaN                 NaN
然后我将编写一个新的csv文件,并创建以下列:

df_["DESCRIPTION"] = df["CM "]
df_["IMAGES_URL"] = df[["FOTO 1 ", "FOTO 2 ", "FOTO 3 ", "FOTO 4 "]].apply(lambda x: x.str.cat(sep='|'), axis=1)
df_["WAREHOUSE"] = "D"
最后,我将其存储在csv文件中,并使用分号作为分隔符:

df_u.to_csv('path/my_ufile.csv',encoding='utf-8',index=False,sep=';'))

输出如下所示:

DESCRIPTION;IMAGES_URL;WAREHOUSE
some text some;744905_L050_01.jpg|744905_B001_01.jpg;D
some text some;;D
some text some;621059_W034_01.jpg|621059_W034_02.jpg|621059_W034_03.jpg;D
some text some;;D
但是,如果所有四个Foto列都有
NaN
值,它将写入double
编码到csv文件中。

如何删除双分号并仅用一个分号替换它?

如果人为地将“;”替换为“;”,您将有来自的数据,例如Foto 3进入Foto 2列。这真的是你想要的吗?如果没有,您可以在NAN中填充其他内容:

df_u.fillna('No foto',inplace=True)

您有一个“双分号”,其中数据帧中没有foto。这个问题应该在那里解决。我该怎么解决呢?我已经尝试将“;”替换为“;”,但再次失败,您有一个“;”(空列),因为缺少一个值。CSV文件的每行中必须有相同数量的列。这是不可谈判的。你不能拥有你想要的东西——首先,你为什么想要它?