使用python将带有键和数据框的dict写入excel工作表

2024-04-25 06:50:12 发布

您现在位置:Python中文网/ 问答频道 /正文

我有下面的字典,其中包含关键的月份和一个数据帧。你知道吗

enter image description here

数据和密钥:

Data Period         Jan'18              Data Period     Jan'18              Data Period     Jan'18      
Churn Period        Feb'18              Churn Period    Mar'18              Churn Period    Apr'18      

Variable_Name       correlation         Variable_Name   correlation         Variable_Name   correlation
Pending_Disconnect  0.553395448         Pending_Change  0.043461995         active_frq_N    0.025697016
status_Active       0.539464806         status_Active   0.038057697         active_frq_Y    0.025697016
days_active         0.414774231         ethnic          0.037503202         ethnic          0.025195149
days_pend_disco     0.392915837         days_active     0.037227245         ecgroup         0.023192408
prop_tenure         0.074321692         archetype_grp   0.035761434         age             0.023121305
abs_change_3m       0.062267386         age_nan         0.035761434         archetype_nan   0.023121305

键和数据框必须写入excel表,每个数据框和键组合之间有一个间隙。你知道吗

enter image description here

因此,数据周期来自密钥的第一部分,而客户流失周期来自第二部分,即-。 每个数据帧包含如下所示的数据:

Variable_Name       correlation 
Pending_Disconnect  0.553395448 
status_Active       0.539464806 
days_active         0.414774231 
days_pend_disco     0.392915837 
prop_tenure         0.074321692 
abs_change_3m       0.062267386 

有人能帮我吗?你知道吗


Tags: 数据namedatastatus密钥daysvariablejan
1条回答
网友
1楼 · 发布于 2024-04-25 06:50:12

1.)应该连接字典的所有数据帧并创建一个大数据帧。你知道吗

创建空数据帧:

tmp = pd.Dataframe()

遍历字典的键(比如d),并连接dfs:

for i in d.keys():
    tmp = pd.concat([tmp,d[key]], axis=1)

现在,tmp是一个大的df,所有较小的数据帧都连接在一起。你知道吗

2.)在这个新的dftmp中追加blank columns这里的要点是,每个小df都应该用一个空白列与另一个小df隔开。

所以,如果有3个小的df,那么在tmp后面加上2个空白列。你知道吗

tmp[''] = ''
tmp[''] = ''

3.)现在,通过在小df之间放置空白col来重新构造tmpdf。你知道吗

假设tmp中的列是:

'variable_name','correlation','Attribute','Datatype', 'variable_name','correlation','Attribute','Datatype', 'variable_name','correlation','Attribute','Datatype', '','' ## Last 2 cols are empty having blank values(step#2)

这些是连接的所有小df的列。你知道吗

现在,创建一个列列表,并在每个小df之间放置一个空白列:

col_list = ['variable_name','correlation','Attribute','Datatype', '', 'variable_name','correlation','Attribute','Datatype', '', 'variable_name','correlation','Attribute','Datatype']

4.)按照col_list重新安排tmp。你知道吗

tmp = tmp[col_list]

5.)现在,您已经准备好了这个大数据帧,每个小数据帧由一个空白列和另一个空白列分隔。 现在将此文件绑定到excel中。你知道吗

tmp.to_excel() ## Fill all required parameters and write to excel.

如果这有帮助,请告诉我。你知道吗

相关问题 更多 >