如何连接列表和数据框以在 Python 中创建字典

How to concatenate a list and a dataframe to create a dictionary in Python

我正在尝试连接 Python 中的列表和数据框,这样做时我收到以下错误:

error cannot concatenate object of type '<class 'list'>'; only Series and DataFrame objs are valid.

第一个 df 看起来像这样:

assets =  ['ABN.AS','ACCEL.AS','ADYEN.AS','AGN.AS']
Type(assets)= list

第二个 df 如下所示:

Curr=    
            ABN.AS  ACCEL.AS    ADYEN.AS    AGN.AS  Idx
        1   EUR     EUR         EUR         EUR     currency
        
 type(curr)=pandas.core.frame.DataFrame

上面的数字1只是多余的信息,如果我运行代码刮取代码的货币,它会自动出现。 Python 没有将数字 1 视为单独的列(而 运行ning print(curr)

我删除了不相关的最后一列。

curr = curr.drop(['idx'],axis =1)

我无法删除 header 行,我试过这个:curr.columns = range(curr.shape[1]) 现在的df是这样的,烦人的2删不掉,多余的。

    0   1   2   3   4       
2   EUR EUR EUR EUR EUR 

目标是创建一个新的 df(字典),它必须如下所示:

assets_result={'ABN.AS':'EUR','ACCEL.AS':'EUR','ADYEN.AS':'EUR','AGN.AS':'EUR'}
Type(assets_result)= dict

我试过这样做,结果出现了上面提到的错误:

result = pd.concat([assets, curr])

你可以简单地做:

curr.drop(['idx'], axis=1).iloc[0].to_dict()

或:

curr[assets].iloc[0].to_dict()