问题描述
@H_404_0@我想创建一个用于测试的数据框,如下所示:
@H_404_0@我已经能够通过将列定义为字典来做到这一点,如本答案 https://stackoverflow.com/a/65720110/251754 所示,但我想知道是否有更好的方法来做到这一点。我尝试了以下方法,但它不起作用,因为元素不能使用列表:
目标 | var0 | var1 | var2 | var3 |
---|---|---|---|---|
0 | 0.34 | 1.43 | 0.41 | 0.98 |
1 | -1.43 | -0.31 | 7.43 | 1.95 |
@given(x_df=
data_frames(
columns=columns(names_or_number=['target','var0','var1','var2','var3'],elements=[strategies.integers(),strategies.floats()]),index=range_indexes(min_size=10,max_size=10),)
)
解决方法
您可以手动构建一个 column
对象列表,例如作者:
@given(
x_df=data_frames(
columns=[column(name="target",elements=strategies.integers())] + columns(
names_or_number=["var0","var1","var2","var3"],elements=strategies.floats(),),index=range_indexes(min_size=10,max_size=10),)
)