さまざまなシミュレーション結果を含むファイルがいっぱいのフォルダがあります。私は各ファイル内の単一の行をデータフレームにインポートしようとしています。私はパンダを使用してread_csvこのタスクを実行する機能。以下は、私が使用しているコードは次のとおりです。 -read_csvを使用してファイルから特定の行をインポートする方法
p32 = pd.DataFrame()
file_list = glob.glob('*.sts')
for file in file_list:
if p32.empty:
p32 = pd.read_csv(file, sep='\t', skiprows = 9, header = 1, nrows = 1 , skip_blank_lines = True, encoding = 'ISO-8859-1', skipinitialspace = True)
itz = file.split('.')[0].split('_')[2]
p32['Iteration'] = itz
else:
p32_temp = pd.read_csv(file, sep = '\t', skiprows = 9, nrows = 1, header =1 , encoding = 'ISO-8859-1', skipinitialspace = True)
itz = file.split('.')[0].split('_')[2]
p32_temp['Iteration'] = itz
p32 = pd.concat([p32, p32_temp], axis = 0)
del p32_temp
問題がある、私は2つの異なるインデックスの場所にある2つの異なる行を抽出する必要があります。最初の場所はタイトル(インデックス= 10)を持ち、2番目の場所はデータ(インデックス14)を含んでいます。上記のコードを使用すると、適切なサイズのDataframeが正しい列で取得されます。ただし、データフレーム内のデータは間違った列からのものです。
私はskiprowsを変更する必要があることを知っています。あなたはこの引数にリストを渡すことができますが、どのようにしてヘッダの1つを確実にすることができますか?
多くのありがとうございます。
MT