2016-03-19 9 views
0

私はつぶやきとその感情の極性を含む.csvファイルを持っています。 DictReaderを使用して、私は形式でファイル内の各行を参照してください。辞書項目をPythonの既存の辞書に追加するにはどうすればよいですか?

Sentiment: '0', SentimentText: 'xyz' 

今、私は最後の辞書の構造があるように、既存の辞書にファイルの各行を追加したい:

{{Sentiment: '0', SentimentText: 'xyz'}, 
{Sentiment: '1', SentimentText: 'abc'}...#so on until eof} 

これは可能ですか?

編集:これまでのところ、これは私が達成したものです。これは基本的に辞書のリストを作る:

dataset = [] 
with open('SentimentAnalysisDataset.csv') as csvfile: 
    reader = csv.DictReader(csvfile) 
    count = 1 
    for row in reader: 
     data = [{'Text': row['SentimentText'], 'Polarity': row['Sentiment']}] 
     tuple = {str(count): data} 
     count = count + 1 
     dataset.append(tuple) 
+0

関連:そのような辞書http://stackoverflow.com/questions/38987/how-can-i-merge-two-python-dictionaries-in-a-single-expression?rq=1 – MrPyCharm

+0

あなたが試したことを示してください。 – fledgling

+0

@Mominaathar、これは辞書の正しい構造ではありません。それをリストにするつもりはないのですか? – Bharel

答えて

1

この:

{{Sentiment: '0', SentimentText: 'xyz'}, 
{Sentiment: '1', SentimentText: 'abc'}...#so on until eof} 

が有効な辞書構造ではありません。あなたがリストを使用する場合、これは動作します:

はそれを行うためには
{'0': 'xyz', 
'1': 'abc', 
...} 

、既存を更新する必要があります。そうしないと

[{Sentiment: '0', SentimentText: 'xyz'}, 
{Sentiment: '1', SentimentText: 'abc'}...#so on until eof] 

、あなたはおそらく、このような構造を探しています

existing_dict = {'0': 'xyz', 
       '1': 'abc'} 

existing_dict[row['Sentiment']] = row['SentimentText'] 

# OR 
new_dict = {row['Sentiment']: row['SentimentText'], 
      ... # For all sentiments in file 
      } 
existing_dict.update(new_dict) 
関連する問題