2017-04-15 6 views
1

同じCSVで2つのパンダのデータフレームの上に異なるタイトルを印刷するにはどうすればよいですか?私は印刷コマンドを試しましたが、タイトルはCSVの代わりに端末に印刷されました。上記のタイトルを印刷するにはどうすればいいですか?pandas dataframe(.to_csv)

if __name__ == "__main__": 
V = result 
W = reference 
H = np.random.random([5,5100]) 
basis_mat, coef_mat = nmf_nimfa(V, W, H) 

basis_df = pd.DataFrame(data=basis_mat) 
coef_df = pd.DataFrame(data=coef_mat) 

with open('NMF_nimfa.csv', 'w') as f: 
    print "Matrix 1" 
    coef_df.to_csv(f) 
with open('NMF_nimfa.csv', 'a') as f: 
    print "Matrix 1" 
    basis_df.to_csv(f) 

答えて

2

必要書き込みがwriteを使用したテキストで新しい行を提出する場合:.to_csv()関数を呼び出すときに

with open('NMF_nimfa.csv', 'a') as f: 
    f.write("Matrix 1 \n") 
    coef_df.to_csv(f) 
    f.write("Matrix 1 \n") 
    basis_df.to_csv(f) 
1

あなたがpath_or_bufパラメータを指定しない場合 - それは文字列を返します。だから、単純に返されたCSV文字列を使用してタイトルを連結することができます:私は私の解決策として、巨大なデータフレームのための@jezrael's solutionを使用することをお勧めします

f.write("Matrix 1 \n" + oef_df.to_csv()) 

PSはpotentionally大のDF

ため MemoryErrorを引き起こす可能性があります
関連する問題