【问题标题】:Reading columns from a CSV file doesn't seem to work从 CSV 文件中读取列似乎不起作用
【发布时间】:2018-10-20 15:29:09
【问题描述】:

我有一个 .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

有没有办法把这一大列拆分成原来的多列形式?

【问题讨论】:

  • 使用sep=','pd.read_csv(),默认情况下使用逗号作为分隔符
  • 这成功了!非常感谢!

标签: python pandas csv jupyter-notebook lda


【解决方案1】:

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

所以尝试明确指定逗号作为分隔符:

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

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

【讨论】:

    【解决方案2】:

    你可以使用:

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

    【讨论】:

      猜你喜欢
      • 2010-09-12
      • 1970-01-01
      • 2014-11-17
      • 2021-04-29
      • 1970-01-01
      • 1970-01-01
      • 2021-08-16
      • 2014-02-25
      • 2018-09-18
      相关资源
      最近更新 更多