将预测值和残差作为不同列附加到数据框上是一种有用且常见的做法.我是熊猫的新手,我在执行这个非常简单的操作时遇到了麻烦.我知道我错过了一些明显的东西.有一个非常相似的问题大约一年半前,,但它没有得到真正的回答.
数据框目前看起来像这样:
y x1 x2
880.37 3.17 23
716.20 4.76 26
974.79 4.17 73
322.80 8.70 72
1054.25 11.45 16
Run Code Online (Sandbox Code Playgroud)
而我想要的是返回一个具有预测值的数据帧和每个观察的y = x1 + x2的残差:
y x1 x2 y_hat res
880.37 3.17 23 840.27 40.10
716.20 4.76 26 752.60 -36.40
974.79 4.17 73 877.49 97.30
322.80 8.70 72 348.50 -25.70
1054.25 11.45 16 815.15 239.10
Run Code Online (Sandbox Code Playgroud)
我已经尝试使用statsmodels和pandas解决这个问题并且无法解决它.提前致谢!
我正在从MSSQL过渡到PostgreSQL,并且仍在研究过程编程的语法。这个想法是创建一个将表作为输入/参数的函数,SELECT针对该输入表执行一系列语句(无临时表;这些SELECT语句将使用CTE执行),以及RETURN最终表。
输入表将非常简单:
Col_1 Col_2 Col_3
----------------------------
2 5 12
Run Code Online (Sandbox Code Playgroud)
我想使用每个字段中输入表,以计算一个数字(在本例中,求和Col_1,Col_2和Col_3),将其追加到输入表,并创建一个输出表显示为这样的:
Col 1 Col_2 Col_3 Col_4
---------------------------------------
2 5 12 19
Run Code Online (Sandbox Code Playgroud)
我的代码尝试:
CREATE OR REPLACE FUNCTION summing_function(input_table)
RETURNS output_table(Col_1 INT, Col_2 INT, Col_3 INT, Col_4 INT) AS
$$
SELECT
i.*
, i."Col_1" + i."Col_2" + i."Col_3" as sum
INTO output_table
FROM input_table i
$$
LANGUAGE SQL;
Run Code Online (Sandbox Code Playgroud)
显然,美元报价之间的所有内容都不完整/错误。美元报价之间的正确postgreSQL语法是什么?
dataframe ×1
function ×1
pandas ×1
plpgsql ×1
postgresql ×1
prediction ×1
python ×1
statsmodels ×1