2017-04-23 22 views
0

私はPythonでExcelスプレッドシートファイルの内容に基づいて辞書を構築しようとしています。ここでスプレッドシートが構成されている方法の一例(2列)である:Excelスプレッドシートの内容の辞書を作成する方法は?

Col 1  Col 2 
Hello  World 
Hello  Earth 
Hello  Planet 
Hello  Mars 
Hello  Moon 
Hi  Pluto 
Hi  Neptune 
Hi  Jupiter 

にはどうすればデータは次のように見えるようにPythonで辞書を作成してください:

[{'Hello': 'World', 'Earth', 'Planet', 'Mars', 'Moon'}, {'Hi': 'Pluto', 'Neptune', 'Jupiter'}] 

私がしようとしています各キーに複数の値が含まれるようにします。

EDIT:.csvファイルを「Excelスプレッドシートファイル」に変更しました
EDIT2:コード内で{}に変更された括弧。申し訳ありません、それは事故でした。

+1

をも有効な辞書構造ではありません。あなたは '{'と '}'を必要とし、括弧は必要としません。 'pandas.read_excel'を使ってファイルを少なくとも読んでください。 – blacksite

+0

PythonはExcelファイルを組み込み関数で読み取ることができません。まずは、openpyxlやxlrdのような第三者のExcelファイル読み取りモジュールを使う必要があります。 – martineau

答えて

1

[{'Hello': 'World', 'Earth', 'Planet', 'Mars', 'Moon'), ('Hi': 'Pluto', 'Neptune', 'Jupiter'}]は有効なpython辞書ではありません。あるキーに対して複数の値を持つことはできません。

しかし、あなたはあなたがこれを行うことができパンダでこの

{ 
    'Hello': [ 
     'World', 
     'Earth', 
     'Planet', 
     'Mars', 
     'Moon' 
    ], 
    'Hi': [ 
     'Pluto', 
     'Neptune', 
     'Jupiter' 
    ] 
} 
+0

これは私が探しているものです。どうすればこれを達成できますか? –

+0

"openpyxl"のような、excelから読み込んだPythonライブラリがいくつかあります。ドキュメントを確認してください – Rajesh

0

のように、項目のリストとしての価値を持つことができます。

import pandas as pd 
df = pd.read_excel('data1.xlsx') 
dictionary = df.to_dict() 
関連する問題