【问题标题】:Parsing a tab-delimited .txt into a Pandas DataFrame将制表符分隔的 .txt 解析为 Pandas DataFrame
【发布时间】:2020-06-19 15:41:01
【问题描述】:

我有一个制表符分隔的 .txt 文件,我正在尝试将其导入 Python 中的数据框,其格式与文本文件相同,如下所示:

ham TAB 一直到句容点,疯了.. 只在 bugis n great world la e Buffet 提供... Cine there got amore wat... p>

垃圾邮件 TAB 每周免费参加 2 场比赛以赢得 2005 年 5 月 21 日的足总杯决赛。发短信 FA 至 87121 以接收参赛问题(标准 txt 率)条款和条件申请08452810075over18的

...

请注意,上面还有很多很多行(大约 5500 行)我想传递给 Python 并在从中创建矩阵数组时保持相同的格式。

我目前的代码是:

 import pandas as pd 

 with open("SMSSpamCollection.txt") as f:
      reader = csv.reader(f, delimiter = "\t")
      d = list(reader)
 d = pd.DataFrame(reader)

它稍微做了我需要做的事情,但我想要一个包含 2 列的 DataFrame:Y(包含火腿或垃圾邮件)和第二个 X(包含消息)。这时我得到一个 [5572,2] DataFrame。

【问题讨论】:

  • 你的工作比你需要的要努力得多。 Pandas read_csv 处理所有文件上下文管理和读取,几乎不需要任何调整,但可以进行大量调整

标签: python string dataframe csv


【解决方案1】:

这个怎么样:

import pandas as pd 
d = pd.read_csv("SMSSpamCollection.txt", sep="\t", names=['Y','X'])

【讨论】:

    猜你喜欢
    • 2011-12-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多