このようなExcelシートがあるとしましょう。
このファイルをパンダで読むColumn1
とColumn2
、Column3
ヘッダーとして、、を取得できます。
しかし、私はおそらくこのような辞書の出力を知りたい/作成したい、
{Column1: 'A', Column2: 'B', Column3: 'C'}
その理由は、マスターマッピングファイル(各列の参照が手動で実行されている)から別の辞書があり、それぞれへのすべての参照が次のColumn
ようになっているためです。
{Column1: 'A', Column2: 'B', Column3: 'C', Column4: 'D'}
このようにして、キーと値をクロスチェックし、不一致がある場合は、それらの不一致を特定できます。パンダにファイルを読み込んでいるときに、A
forColumn1
などの元の列名を取得するにはどうすればよいですか?何か案は??
dict
withzip
を使用して、列名を文字にマップできます。最大26列あると仮定します。
from string import ascii_uppercase
df = pd.DataFrame(np.arange(9).reshape(3, 3),
columns=['Column1', 'Column2', 'Column3'])
d = dict(zip(df.columns, ascii_uppercase))
print(d)
{'Column1': 'A', 'Column2': 'B', 'Column3': 'C'}
26を超える列の場合、Excel列のような繰り返し文字でitertools.product
利用可能なソリューションを適応させることができますか?
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加