示例数据框:
df = pd.DataFrame({"A": [1, 2, 3], "B": [4, 5, 6]})
Run Code Online (Sandbox Code Playgroud)
我想将每个现有列的逆添加到数据框中,并根据带有前缀的现有列名称来命名它们,例如inv_A是列的逆A,等等。
生成的数据框应如下所示:
df_inv = pd.DataFrame({"A": [1, 2, 3], "B": [4, 5, 6], "inv_A": [1/1, 1/2, 1/3], "inv_B": [1/4, 1/5, 1/6]})
Run Code Online (Sandbox Code Playgroud)
显然,有一些多余的方法,比如在循环中执行此操作,但应该存在更多Python式的方法来执行此操作,并且在搜索一段时间后我没有找到任何内容。我知道这很可能是重复的;如果是这样,请指出我现有的答案。
我尝试在回归模型上使用Hyperopt,以便为每个变量定义其超参数之一,并且需要作为列表传递。例如,如果我有一个包含 3 个自变量(不包括常量)的回归,我会通过hyperparameter = [x, y, z](其中x, y, z是浮点数)。
无论应用于哪个变量,该超参数的值都具有相同的界限。如果这个超参数应用于所有变量,我可以简单地使用hp.uniform('hyperparameter', a, b). 我希望搜索空间是hp.uniform('hyperparameter', a, b)length的笛卡尔积n,其中n是回归中变量的数量(所以,基本上,itertools.product(hp.uniform('hyperparameter', a, b), repeat = n))
我想知道这在 Hyperopt 中是否可行。如果没有,欢迎提供任何可能的优化器建议。