假设我有一个熊猫数据框,只有一行,它看起来像这样:-
Column1 Column2 ...... Column n
Row 1 0.123 0.234. 0.156
例如,现在我想为此再生成10行,一种方法是将该行重复10次。但是,我希望它在数学和逻辑上是连贯的,例如使生成的另外10行遵循正态分布(尽管问题只有1行),但又不希望所有行都相同。是否有任何合适的方法可以基于此单行生成更多随机行,以使这些行不仅仅是普通重复项?
答案 0 :(得分:0)
这将花费您的df,获取第一行的均值和标准差,并根据需要添加任意数量的行,并使用正态分布中的数字。更改范围以添加更多。
import pandas as pd
import numpy as np
df = pd.DataFrame(df)
standev = df.std(axis=1)
rowmean = df.mean(axis=1)
standev = standev[0]
rowmean = rowmean[0]
ncolumns = len(df.columns)
rows = []
for i in range(10):
noise = np.random.normal(rowmean , standev , ncolumns)
df.loc[len(df)]=noise