【问题标题】:Solution For Bypassing a Step: Text To CSV Pandas绕过步骤的解决方案:文本到 CSV Pandas
【发布时间】:2023-03-30 06:05:01
【问题描述】:
  1. 我读取带有 header=None 的文本文件,因为前 6 行是不必要的,并且成为使用 '|' 的障碍作为分隔符。因为我需要将文本文件转换成 csv 文件。

  2. 然后我需要将该文件转换为 csv 文件,并且我需要再次使用分隔符“|”导入 27evening.csv 文件。然后只有我可以将 df2 保存为最终的 csv。

我不想在如图所示的第 4 步之后保存(作为 csv),并且想使用分隔符“|”打开 userhistory_aam.txt。 这里我不想生成不必要的中间文件(27evening.csv) 能否请您提供替代方案。

'''

import pandas as pd
import numpy as np
df = pd.read_csv("userhistory_aam[50][100]27May.txt", header = None)
df.columns = [''] * len(df.columns)
df.drop([0,1,2,3,4,6],0,inplace=True)
df.to_csv("27evening.csv", index = None)
df2 = pd.read_csv("27evening.csv", delimiter = '|')
df2.to_csv('final.csv')

'''

【问题讨论】:

  • 请不要发代码图片
  • @Isotope 好的,我正在删除
  • @Isotope 在不删除前 6 行的情况下,我无法使用分隔符将文本文件转换为 csv 文件作为“|”。因此,我必须在删除前 6 行后保存 txt 文件。但我需要绕过这一步,因为它会生成不必要的 27evening.csv 文件。

标签: python pandas


【解决方案1】:

在您的读取方法中使用skiprows

df = pd.read_csv('data.txt',sep='|',skiprows=6)

data.txt.

 random text and data
# could also start with a #
more random text 
1|2|3|4|5|6|7
1|2|3|4|5|6|7
1|2|3|4|5|6|7
A|B|C|D|E|F|G # <-- data starts here.
a|b|c|d|e|f|g 

print(df)

   A  B  C  D  E  F   G
0  a  b  c  d  e  f  g

注意# &lt;-- data starts here. 仅用于说明,请勿将其放入文本文件中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-11
    • 1970-01-01
    • 2023-02-21
    • 1970-01-01
    • 2020-08-29
    • 2011-02-05
    相关资源
    最近更新 更多