pandas read_csv忽略sep

2024-05-14 19:10:30 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个CSV文件,其中包含以下法语文本:

 "Dune!;Jeux"
 "Snapchat;Photo et vidéo"
 "Instagram;Photo et vidéo"
 "YouTube: Regarder & Découvrir;Photo et vidéo"
 "WhatsApp Messenger;Réseaux sociaux"
 "Wish - Acheter en s'amusant;Shopping"
 "Messenger;Réseaux sociaux"

我无法使用;作为分隔符将此文件作为两列来读取:

^{pr2}$

它给出了以下内容:

                                              0
0                                    Dune!;Jeux
1                       Snapchat;Photo et vidéo
2                      Instagram;Photo et vidéo
3  YouTube: Regarder & Découvrir;Photo et vidéo
4            WhatsApp Messenger;Réseaux sociaux

似乎已忽略分隔符;。我的代码示例有什么问题?在


Tags: 文件youtubemessengeretinstagramwhatsappphotovid
1条回答
网友
1楼 · 发布于 2024-05-14 19:10:30

它应该是sep=';'而不是delimeter=';'

In[41]:
import io
import pandas as pd
df = pd.read_csv(io.StringIO(t), sep=';', header=None)
df

Out[41]: 
                                0                1
0                           Dune!             Jeux
1                        Snapchat   Photo et vidéo
2                       Instagram   Photo et vidéo
3   YouTube: Regarder & Découvrir   Photo et vidéo
4              WhatsApp Messenger  Réseaux sociaux
5     Wish - Acheter en s'amusant         Shopping
6                       Messenger  Réseaux sociaux

更新

查看您的数据,每一行都用引号括起来,因此无法正确解析,您可以使用.str.split(';',expand=True)作为后处理步骤来完成此操作

^{pr2}$

您可以使用花式索引删除最后一列:

In[69]:
df1 = df1.loc[:,:1]
df1.head()

Out[69]: 
                                0                 1
0                           Dune!              Jeux
1                        Snapchat   Photo et vidéo
2                       Instagram   Photo et vidéo
3  YouTube: Regarder & Découvrir   Photo et vidéo
4              WhatsApp Messenger  Réseaux sociaux

相关问题 更多 >

    热门问题