从CSV文件中读取列似乎不起作用

时间:2018-05-10 11:10:27

标签: python pandas csv jupyter-notebook lda

我有一个.csv新闻文章数据集(应该有)发布,日期,标题等列。当我用Numbers打开这个文件时,它完美地显示了这一点,每个列都被考虑在内。但是,当我尝试在Jupyter Notebook中使用该文件时,列似乎无法正常工作。这就是我所拥有的:

%matplotlib inline
import matplotlib
import numpy as np
import matplotlib.pyplot as plt

import pandas as pd

data = pd.read_table("filename.csv",encoding="utf-8")

data.columns #and 

然后它给了我:

Index(['SEARCH_ROW,PUBLICATION,DATE,TITLE,EDITION,BYLINE,LANGUAGE,SECTION,JOURNAL-CODE,NYT,PUBLICATION-TYPE,LENGTH,LOAD-DATE,TEXT'], dtype='object')

使用Microsoft Excel打开文件会给我带来同样的问题;每列都命名为:

SEARCH_ROW,PUBLICATION,DATE,TITLE,EDITION,BYLINE,LANGUAGE,SECTION,JOURNAL-CODE,NYT,PUBLICATION-TYPE,LENGTH,LOAD-DATE,TEXT

有没有办法将这个一大列分成原始的多列形式?

2 个答案:

答案 0 :(得分:0)

pd.read_table(...)默认使用tab'\t')作为分隔符。

因此,请尝试明确指定逗号作为分隔符:

pd.read_table(filename, sep=',')

或使用pd.read_csv(),默认情况下使用逗号作为sparator

答案 1 :(得分:0)

你可以使用:

data = np.genfromtxt('filename.csv', delimiter=',')