私はCSVファイルBook1とBook2を持っています。 Book1の列はA, B, C, D, E
であり、Book2にあるのはA, B, E, H.
Book1に共通する列名だけでなく、Book1に追加されている列名だけが含まれるようにBook2を変更したいと考えています。ファイルは、次のとおりです。2つのcsvファイルを比較し、両方に共通しない列を追加してください
BOOK1
A B C D E
10.12.0.1 a 35 0 11
10.12.0.1 b 35 1 10
107.77.87 a 35 0 101
ブック2:
A B E H
9.81.2 b 10 w
10.15.32 b 100 w
11.16.5 b 101 w
修正した後、最終的なブック2は次のようになります。 Book2_final:
:A B C D E
9.81.2 b 10
10.15.32 b 100
11.16.5 b 101
は、私は次のことを試してみました
import pandas
a= open('input_test.txt','r')
csv1 = pandas.read_csv('Book2.csv',dtype='unicode')
inserted_cols = a.read().split(',')
csv1[inserted_cols].to_csv('Book2_test.csv',index=False)
ファイル'input_test.txt'
にはBook1の列がカンマで区切られた同じ順序で含まれています。しかし、私はエラーが発生します:
KeyError: "['C' 'D' 'E\\n'] not in index"
何が問題なのか分かりません.New to Python。
あなたはBOOK1のレコード(IPのアドレスが使われる)のいずれかがBook2_finalになりたくありませんか? Book1に存在しない場合、どこにE列の値をBook2_finalに入れるのですか? – aneroid
@nanoidでは、Book2はBook1から値を取りません。私はBook1の追加の列名をBook2に置いて、Book2にある余分な列名を削除してください。この場合はHの列H –