微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

从数据帧生成具有不同均值的 szenarios

如何解决从数据帧生成具有不同均值的 szenarios

我有以下数据框:

           Cluster  OPS(4)  mean(ln)  std(ln)
0           5-894  5-894a     2.203    0.775
1           5-894  5-894b     2.203    0.775
2           5-894  5-894c     2.203    0.775
3           5-894  5-894d     2.203    0.775
4           5-894  5-894e     2.203    0.775

对于每种手术类型(在 OPS(4) 列中),我想生成 10.000 个场景,这些场景应该存储在另一个数据框中。

我知道,我可以通过以下方式创建场景:

 num_reps = 10.000
 scenarios  = np.ceil(np.random.lognormal(mean,std,num_reps))

新的数据框应该是这样的,每列中有 10,000 个场景:

scen_per_surg = pd.DataFrame(index=range(num_reps),columns=merged_information['OPS(4)'])

OPS(4) 5-894a 5-894b 5-894c 5-894d 5-894e 
0         NaN    NaN    NaN    NaN    NaN    
1         NaN    NaN    NaN    NaN    NaN    
2         NaN    NaN    NaN    NaN    NaN    
3         NaN    NaN    NaN    NaN    NaN    
4         NaN    NaN    NaN    NaN    NaN    
5         NaN    NaN    NaN    NaN    NaN    
...

不幸的是,我不知道如何遍历第一个数据帧的行来创建场景。

有人可以帮我吗? 最好的问候

解决方法

创建一些实验数据

import pandas as pd
df = pd.DataFrame(data=[
                          [ '5-894','5-894a',2.0,0.70],[ '5-894','5-894b',2.1,0.71],'5-894c',2.2,0.72],'5-894d',2.3,0.73],'5-894e',2.4,0.74] ],columns =['Cluster','OPS(4)','mean(ln)','std(ln)'])
print(df)

创建一个空数据框

new_df = pd.DataFrame()

定义一个函数,该函数将应用于原始df的每一行并生成所需的随机值并将其分配给新df中的一列

import numpy as np
def geb_scenarios(row):
  # print(row)
  col,mean,std = row[1:]
  new_df[col] = np.ceil(np.random.lognormal(mean,std,10))

应用函数

df.apply(geb_scenarios,axis=1)
print(new_df)

enter image description here

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?