簡體   English   中英

將cvs文件讀取到Dictionary python

[英]Read cvs file to Dictionary python

請,我需要閱讀CSV文件並將結果轉換為字典。

文件輸入:

在此處輸入圖片說明

讀取后所需的對象如下:

defaultdict(<type 'dict'>, {‘Book’: {‘Book’: 1.0, ‘Afnan’: 0, ‘Location’: 0, ‘Love’: 0}, ‘Afnan’: {‘Book’: 0, ‘Afnan’: 1.0, ‘Location’: 0.71, ‘Love’: 0}, ‘Location’: {‘Book’: 0, 'Afnan’: 0.71, ‘Location’: 1.0, ‘Love’: 0}, ‘Love’: {‘Book’: 0, ‘Afnan’: 0, ‘Location’: 0, ‘Love’: 1.0}})

我寫下面的代碼,但不能按照我想要的工作。 請幫忙。

reader = unicode_csv_reader(open('cos3.csv'))
x=list(reader)
for i in x:
    if isinstance(i,float):
        arr=np.array(x).astype('float')
    else:
        arr=np.array(x).astype('string')
d=defaultdict(dict)
for a in arr:
    for b in arr:
        d[a][b]=arr(a)

我總是使用csv.DictReader ,然后以您想要的格式構建字典,如下所示:

在此處輸入圖片說明

import csv
import os
cwd = os.getcwd()


d_out = {}
with open(cwd+'\\example.csv', 'rb') as file_in:
    reader = csv.DictReader(file_in, restkey=None, restval=None, dialect='excel')
    for row in reader:
        d_out.setdefault(row['Key'], {'Book':row['Book'], 'Afnan':row['Afnan'], 'Location':row['Location'], 'Love':row['Love']})


print d_out

希望這可以幫助!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM