【问题标题】:Pandas converting Text file to CSV熊猫将文本文件转换为 CSV
【发布时间】:2021-07-20 15:44:46
【问题描述】:

我需要将文本文件转换为 CSV。请在下面查看我的代码。我的文本文件包含由不等空格分隔的 5 列。当我将其转换为 CSV 文件时,所有这 5 列都在 Excel 文件中的一个列中。

代码:

import pandas as pd   
 
dataframe1 = pd.read_csv("C:\HARI_BKUP\PYTHON_SELF_Learning\Funct_Noise_Corners_2p0_A.txt",) 
  
dataframe1.to_csv('FF.csv', index = None)

我需要一个包含每个单独列的 CSV 文件。我可以知道我哪里出错了吗?

文本文件

运行代码后的输出

dataframe1 = pd.read_csv("C:\HARI_BKUP\PYTHON _SELF Learning\Funct_Noise_Corners_2p0_A.txt", sep="\t")

【问题讨论】:

    标签: python pandas csv


    【解决方案1】:

    当您读取文件时,您没有指定分隔符。因此,Python 认为分隔符是逗号,将输入视为 CSV 文件(可以查看docs。)。

    但是,您的输入似乎是一个以空格分隔的文件。你的代码应该是:

    import pandas as pd
    
    file_path = "C:\HARI_BKUP\PYTHON_SELF_Learning\Funct_Noise_Corners_2p0_A.txt"
    dataframe1 = pd.read_csv(file_path, delim_whitespace=True)
    
    dataframe1.to_csv('FF.csv', index = None)
    

    只需设置参数delim_whitespace=True 即可使用。

    【讨论】:

    • ,我运行了代码,但仍然在 excel 文件的同一列中。
    • 你能用记事本打开文件,然后在这里发布它的样子吗?
    • 这个正在工作 "delimiter=r"\s+"" 。我正在分开列。但是对齐不合适我希望所有的都在中间对齐
    • 啊,所以你的输入是空格分隔的。我会更新我的答案。关于对齐,Python与它无关。 CSV 文件不包含对齐信息。
    • 我已经在运行代码后发布了记事本文件。谢谢。
    【解决方案2】:

    我想这会解决它

    dataframe1 = pd.read_csv('textfile.txt', delimiter = "\t")
    

    dataframe1 = pd.read_csv('textfile.txt', sep=" ")
    

    【讨论】:

      猜你喜欢
      • 2014-06-13
      • 2015-11-14
      • 2017-08-27
      • 1970-01-01
      • 2017-08-18
      • 1970-01-01
      • 1970-01-01
      • 2022-01-24
      • 2018-02-08
      相关资源
      最近更新 更多