如何以这种形状使用python和pandas堆叠数据?

阿尔坎塔

我完全迷路了,需要您的帮助。我有N个数据集,每个数据集都有m列和以列表形式的x * N行。

x =主题数量

N =任务量

param1&param2 =正在收敛的参数

每个数据集由每个主题的每种情况的线性模型参数组成

df_1= {'id': [1, 2], 'task': [1, 1], 'param1': [1, 2],'param2': [0.5,0.8]} 
df_1 = pd.DataFrame(df_1, columns = ['id', 'task','param1', 'param2'])

id  task    param1  param2 
1   1       1       0.5 
2   1       2       0.8

df_2= {'id': [1, 1, 2, 2], 'task': [1, 2, 1, 2], 'param1': [1.2, 3.2,
2.1, 3.2],'param2': [0.4, 1.1, 0.8, 2.2]} 
df_2 = pd.DataFrame(df_2, columns = ['id', 'task','param1', 'param2'])

id  task    param1  param2 
1   1       1.2     0.4 
1   2       3.2     1.1 
2   1       2.1     0.8 
2   2       3.2     2.2


df_3= {'id': [1, 1, 1, 2, 2, 2], 'task': [1, 2, 3, 1, 2, 3], 'param1': [1.1, 3.1, 2.2, 2.3, 3.2, 1.1],'param2': [0.35, 1.05, 0.7, 0.8, 2.2,
1.1]} 
df_3 = pd.DataFrame(df_3, columns = ['id', 'task','param1', 'param2'])

id  task    param1  param2 
1   1       1.1     0.35 
1   2       3.1     1.05 
1   3       2.2     0.7 
2   1       2.3     0.8 
2   2       3.2     2.2 
2   3       1.1     1.1

这种趋势一直持续到df_N,直到df_N中有x * N条线为止。

我需要将所有df堆叠在一起,并附带一些规则,以便df_final仍然具有x * N行,但是对于每个id和每个任务,如果在此任务之前有关于任务的信息,我们会将它们附加在一起,顺序列的大小无所谓,列的dtype也无所谓,NA值不应为0。有关任务的信息应按人员的ID进行堆叠

最终结果应如下所示:

id  task    1param1 1param2 2param1 2param2 3param1 3param3 
1   1       1       0.5 
1   2       1.2     0.4     3.2     1.1 
1   3       1.1     0.35    3.1     1.05    2.2     0.7 
2   1       2       0.8 
2   2       2.1     0.8     3.2     2.2 
2   3       2.3     0.8     3.2     2.2     1.1     1.1

非常感谢您的帮助!

编辑:抱歉,长时间格式化,现在看起来已经完成了(这是科学的)。

雅利安(Aryan Jain)

看来你的最终数据帧是不是真的键控上idtask,但真正iddf_num再列task+param1task+param2因此,实际上您需要做的是:

final_df = pd.DataFrame(columns=['id','df'])
final_df.set_index(['id','df'], inplace=True)
for i, df in enumerate(datasets):
    for _,row in df.iterrows():
        final_df.loc[(int(row['id']),i+1), str(int(row['task'])) + 'param1'] = row['param1']
        final_df.loc[(int(row['id']),i+1), str(int(row['task'])) + 'param2'] = row['param2']

final_df.sort_index(inplace=True)

这里是什么final_df样子执行上面的代码之后:

       1param1  1param2  2param1  2param2  3param1  3param2
id df
1  1       1.0     0.50      NaN      NaN      NaN      NaN
   2       1.2     0.40      3.2     1.10      NaN      NaN
   3       1.1     0.35      3.1     1.05      2.2      0.7
2  1       2.0     0.80      NaN      NaN      NaN      NaN
   2       2.1     0.80      3.2     2.20      NaN      NaN
   3       2.3     0.80      3.2     2.20      1.1      1.1

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何以这种方式使用comm?

来自分类Dev

使用pandas dataframes数据python创建堆叠的直方图

来自分类Dev

使用 CSS 和 HTML 我如何以这种方式实现我的输出

来自分类Dev

找不到如何以这种方式将DataFrames与Pandas结合

来自分类Dev

如何以这种指定格式获取pandas DataFrame?

来自分类Dev

如何使用ggplot创建百分比堆叠形状

来自分类Dev

如何以功能方式使用Clojure解决这种编程情况?

来自分类Dev

我如何以这种方式使用php代码

来自分类Dev

您如何仅使用CSS制作这种犬齿状的形状

来自分类Dev

如何表示和导航这种数据?

来自分类Dev

如何以这种格式分享?

来自分类Dev

如何在彼此之上堆叠数据帧(Pandas,Python3)

来自分类Dev

如何以我要求的方式取消枢纽或堆叠熊猫数据框?

来自分类Dev

在这种情况下,Python pandas 数据框合并如何工作?

来自分类Dev

Python:如何使用Plotly堆叠或叠加直方图

来自分类Dev

带有堆叠数据的Python Pandas子图

来自分类Dev

带有堆叠数据的Python Pandas子图

来自分类Dev

在 Python 中透视/取消堆叠 Pandas 数据帧

来自分类Dev

Python(Pandas)如何以递增顺序合并2个具有不同日期的数据框?

来自分类Dev

如何取消数据集堆叠(使用数据透视)?

来自分类Dev

如何以这种方式合并这两个数据框

来自分类Dev

如何以这种格式数据在本机中制作多维数组:[[],[],[]]?

来自分类Dev

python bokeh-堆叠的条形,分类和分组的分类数据,n个堆叠系列的情况

来自分类Dev

Java和GeoLite数据库:如何以生产方式使用GeoLiteCity.dat?

来自分类Dev

续集(Ruby),如何以安全的方式递增和使用数据库计数器?

来自分类Dev

D3js:在堆叠数据集之前,如何以不规则的时间间隔对数据集进行插值?

来自分类Dev

javascript如何以这种精度打印0.1?

来自分类Dev

如何以这种方式对值进行排序?

来自分类Dev

如何以这种方式创建字典列表

Related 相关文章

  1. 1

    如何以这种方式使用comm?

  2. 2

    使用pandas dataframes数据python创建堆叠的直方图

  3. 3

    使用 CSS 和 HTML 我如何以这种方式实现我的输出

  4. 4

    找不到如何以这种方式将DataFrames与Pandas结合

  5. 5

    如何以这种指定格式获取pandas DataFrame?

  6. 6

    如何使用ggplot创建百分比堆叠形状

  7. 7

    如何以功能方式使用Clojure解决这种编程情况?

  8. 8

    我如何以这种方式使用php代码

  9. 9

    您如何仅使用CSS制作这种犬齿状的形状

  10. 10

    如何表示和导航这种数据?

  11. 11

    如何以这种格式分享?

  12. 12

    如何在彼此之上堆叠数据帧(Pandas,Python3)

  13. 13

    如何以我要求的方式取消枢纽或堆叠熊猫数据框?

  14. 14

    在这种情况下,Python pandas 数据框合并如何工作?

  15. 15

    Python:如何使用Plotly堆叠或叠加直方图

  16. 16

    带有堆叠数据的Python Pandas子图

  17. 17

    带有堆叠数据的Python Pandas子图

  18. 18

    在 Python 中透视/取消堆叠 Pandas 数据帧

  19. 19

    Python(Pandas)如何以递增顺序合并2个具有不同日期的数据框?

  20. 20

    如何取消数据集堆叠(使用数据透视)?

  21. 21

    如何以这种方式合并这两个数据框

  22. 22

    如何以这种格式数据在本机中制作多维数组:[[],[],[]]?

  23. 23

    python bokeh-堆叠的条形,分类和分组的分类数据,n个堆叠系列的情况

  24. 24

    Java和GeoLite数据库:如何以生产方式使用GeoLiteCity.dat?

  25. 25

    续集(Ruby),如何以安全的方式递增和使用数据库计数器?

  26. 26

    D3js:在堆叠数据集之前,如何以不规则的时间间隔对数据集进行插值?

  27. 27

    javascript如何以这种精度打印0.1?

  28. 28

    如何以这种方式对值进行排序?

  29. 29

    如何以这种方式创建字典列表

热门标签

归档