带有sep参数的python read\u csv在一列中给出了所有参数,或者说第6行中预期有2个文件,但是saw4

2024-10-03 21:34:21 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要将*.inp文件读入数据帧。你知道吗

文件看起来像这样

B*** BASE  321 Emit 200.000

/mrpo

:B311

:200.

Emit,   200.000

CG,    1,UFNQ,    123.56

CG,    2,UFNQ,    143.76

CG,    33,UFNQ,   123.56

CG,    223,UFNQ,  143.76

B*** qwqwndqq is iellai ai  200.000  67

B*** qwqwndqq is iellai ai  5050.000 63

/mrpo

B*** END 321 Emit 200.000

/EOF

我想把它读作dataframe,访问并更改所有行中的第二个数字(前5行和后3行除外),然后重写一个新的*.inp文件

这是我正在使用的代码

df=pandas.read_csv(file_name, sep =',',header = None, engine ='python')

你知道吗输出:应为17号线的字段锯2

df=pandas.read_csv(file_name, sep ='s',header = None, engine ='python')

你知道吗输出:全部输入一列

df=pandas.read_csv(file_name, sep ='delimiter',header = None, engine ='python')

你知道吗输出:全部输入一列

我想要这样的新文件

B*** BASE  321 Emit 200.000

/mrpo

:B311

:200.

Emit,   200.000

CG,    10001,UFNQ,    123.56

CG,    10002,UFNQ,    143.76

CG,    10033,UFNQ,   123.56

CG,    10223,UFNQ,  143.76

B*** qwqwndqq is iellai ai  200.000  67

B*** qwqwndqq is iellai ai  5050.000 63

/mrpo

B*** END 321 Emit 200.000

/EOF

如果python中有其他方法,请给出建议


Tags: 文件csvnamepandasdfreadiscg
1条回答
网友
1楼 · 发布于 2024-10-03 21:34:21

我会使用csv阅读器。我大概是这么做的,但可能需要对索引进行一些调整。。你知道吗

import csv

filename = 'input.csv'
tempfile = 'output.csv'

with open(filename, 'rb') as csvFile, tempfile:
    reader = csv.reader(csvFile, delimiter=',', quotechar='"')
    writer = csv.writer(tempfile, delimiter=',', quotechar='"')
    row_count = sum(1 for row in reader)

    for i, row in enumerate(reader):
        if (i >= 4) and (i<row_count-3):
            row[1] = 10000 + row[1]
            writer.writerow(row)

相关问题 更多 >