我正在开展一项运营研究项目。
我创建了一个启发式方法,我需要密集测试我的方法以评估其性能。
我有3个字段的过去数据;
日期,金额,类型
我想要的是生成新数据,类似于现有数据。我目前正在使用“+/- random”。
我有一个方法或库来生成原始数据,类似于现有数据,通过分析旧数据的统计数据和趋势。
答案 0 :(得分:0)
根据我的评论,你可以使用熊猫。例如,首先生成一些虚拟数据:
data = [{'date': 'dummy', 'amount':1, 'type': 'a'},
{'date': 'dummy' , 'amount':2, 'type': 'a'},
{'date': 'dummy', 'amount':1, 'type': 'b'},
{'date': 'dummy', 'amount':1, 'type': 'b'},
{'date': 'dummy', 'amount':2, 'type': 'c'}]
导入相应的库:
import pandas as pd
import random
将数据导入pandas数据帧:
df = pd.DataFrame(data, columns=['date', 'amount', 'type'])
输出:
date amount type
0 dummy 1 a
1 dummy 2 a
2 dummy 1 b
3 dummy 1 b
4 dummy 2 c
然后随机应用" + / - "数据方法:
df['new amount'] = df['amount'].apply(lambda amount: amount + (-random.random())**random.randint(1, 2))
结果:
date amount type new amount
0 dummy 1 a 1.021583
1 dummy 2 a 1.496697
2 dummy 1 b 0.685394
3 dummy 1 b 1.764432
4 dummy 2 c 2.219713
当然,这个过程必须根据您的确切需求进行更改。您还可以使用pandas进行统计分析,以提出其他方法来转换数据。