1

def dict_trunkated(collection, df):
    dict_all = {}
    #collection = shorten_string(collection)

    collection = list(collection)
    for element in collection: 
        #counter_el += 1
        #print("num dupless", counter_el)
        dict_all[element] = {"id_ja" : None, "id_nein" : None ,"ZUW_ja": set(), "ZUW_nein": set(), "missing_ZUW_ja" : set(), "missing_ZUW_nein" : set()}

    for rownum in range(0,df.shape[0]):
        #counter_zuw += 1
        #print("num zuwlist", counter_zuw)
        #print(df.iloc[rownum][6][-5:])
        if "_Ja" in df.iloc[rownum][6][-5:]:
            dict_all[df.iloc[rownum][6][0:-3]]["id_ja"] = df.iloc[rownum][5]
            dict_all[df.iloc[rownum][6][0:-3]]["ZUW_ja"].add(df.iloc[rownum][1])

        if "_Nein" in df.iloc[rownum][6][-5:]:
            dict_all[df.iloc[rownum][6][0:-5]]["id_nein"] = df.iloc[rownum][5]
            dict_all[df.iloc[rownum][6][0:-5]]["ZUW_nein"].add(df.iloc[rownum][1])
    return dict_all

现在分析我的数据框并将我需要的所有信息放入我的字典需要三分钟多的时间。

我想知道将我以前使用的数组更改为 Pandas 系列是否更好(在我准备在此函数中使用的集合之前的函数内部)?

有没有办法固定我的环?我知道这些衬里,但不知道如何在我的上下文中使用它们。特别是我的第二个 lop 似乎效率很低。

鼓舞我 ;-)

My DataFrame Input looks like: *(Sorry don't know how to present it in a better way)*

Relation ID(INT that becomes `ZUW_ja` or `ZUW_no`) ; TERM-ID (INT that becomes `id_ja` or `id_no`) ; 
NAME (str which gets stemmed and is used as key for the dict) 

我的 dict 输出应如下所示:

dict_all[key] = {'id_ja': 6176144, 'id_nein': 6176145, 'ZUW_ja': {3842, 1283}, 'ZUW_nein': {3842, 3300753}, 'missing_ZUW_ja': set(), 'missing_ZUW_nein': {3300610, }}

4

0 回答 0